Python请求模块代理处理器不起作用
我正在使用Python的请求模块来进行HTTP通信。在进行任何通信之前,我是通过代理来连接的。
import requests
proxy = {'http': 'xxx.xxx.xxx.xxx:port'}
OR
proxy = {'http': 'http://xxx.xxx.xxx.xxx:port'}
OR
proxy = {'http://xxx.xxx.xxx.xxx:port'}
requests.get(url, proxies = proxy)
我用上面的代码把代理添加到请求对象中。但是看起来代理没有起作用,请求模块还是用了我的网络IP来发送请求。
请求模块有没有什么bug或者其他已知的问题,或者我是不是漏掉了什么?
2 个回答
0
文档上说:
如果你需要使用代理,可以在任何请求方法中通过proxies参数来配置单独的请求:
import requests
proxies = {"http": "http://10.10.1.10:3128"}
requests.get("http://example.org", proxies=proxies)
这里的proxies["http"] = "http://xxx.xxx.xxx.xxx:port
"。看起来你缺少了http://这个部分。
2
试试这个:
proxy = {'http': 'http://xxx.xxx.xxx.xxx:port'}
我想你可能在代理字典的值里漏掉了 http://
。
你可以查看这个链接:http://docs.python-requests.org/en/latest/user/advanced/#proxies