为什么python请求lib的ip代理函数不起作用?
问题描述:
我正在用python3创建一些web spider项目,它需要经常更改ip。我用来获取/发布请求的库是“请求”。官方文件提到用get/post
加proxies=ip #ip={'http':'xxx.xxx.xxx.xxx:xxx'}
用ip代理的方法。为什么python请求lib的ip代理函数不起作用?
顺便说一句,建议你们可以使用免费的API从代理网站:gimmeproxy.com如此之好:)
我发现我的蜘蛛通过目标网站仍然被禁止,那么我写一个函数来测试是否proxies=ip
作品:
def test():
ip=get_proxy("US")
url='https://api.ipify.org?format=json'
res=s.get(url,proxies=ip,verify=True)
dic=json.loads(res.text)
print(dic["ip"])
这个网站会返回您当前的IP,我发现proxies=ip
不起作用....
任何人之前达到同样的情况?或者我做错了什么?
感谢阅读并回答:)
答
制作到HTTPS URL,你应该在proxies
字典HTTPS代理的请求时,否则requests
将不使用代理该网址。
proxies={'http':'xxx.xxx.xxx.xxx:xxx', 'https':'xxx.xxx.xxx.xxx:xxx'}
url='https://api.ipify.org?format=json'
res=requests.get(url,proxies=proxies,verify=True)
dic=res.json()
print(dic["ip"])
哦,这就是我之前忽略的,谢谢你的回答,我会试试 – 0han