python - requests.exceptions.InvalidURL:解析失败
问题描述
我认为我的代码干净简单,但我收到了这个错误:
requests.exceptions.InvalidURL: Failed to parse: http://support
.google.com/
当试图运行它时。
我不知道为什么实际上我尝试了太多东西
当我改变
fuzing_website_response = requests.get(f'http://{i}.{take_input}/')
至
fuzing_website_response = requests.get(f'http://{take_input}/{i}')
并运行它并使用有效的 URL 输入 _> 它将成功地给我响应 status_code 。
但是,即使http://support.google.com 是有效的 url ,尝试枚举子域的其他代码也会给我提供的错误
详细回答问题的原因将不胜感激。
脚本代码:
take_input = input('Enter the website > ')
take_file = open('list.txt','r')
for i in take_file:
fuzing_website_response = requests.get(f'http://{i}.{take_input}/')
print (f'{take_input}/{i} ---> {fuzing_website_response.status_code}')
解决方案
这实际上与 urllib3 库有关,因为 requests 使用 urllib3 解析 url,urllib3 的解析器不是 URL 的 userinfo 部分中的百分比编码字符,只需升级您的 urllib3 即可。
如何升级或安装?
python -m pip install --upgrade urllib3
pip install urllib3
来自 github 存储库:
git clone git://github.com/urllib3/urllib3.git
cd urllib3
python setup.py install
推荐阅读
- angular - 每次更改代码时是否需要部署 ng-build
- javascript - Javascript: Finding largest value in object array and returning the key
- ajax - how to work with a network socket (if correct term) in general and in Chrome
- python - Matplotlib X 轴标签被切断,尽管使用了 tight_layout
- java - 如何使用 jndi 属性文件来使用部署在远程服务器中的服务
- windows - 将 Windows 上已完成的 React Native 应用程序移动到 Mac 以生成 IPA
- r - 从 ggplot2 中的箱线图中删除某些数据点
- android - 在谷歌地图静态api中绘制圆形路径
- java - 使用 Maven 配置文件选择的 Java 切换
- assembly - 汇编程序无法识别 _getchar