为什么python请求lib的ip代理函数不起作用?

问题描述:

我正在用python3创建一些web spider项目,它需要经常更改ip。我用来获取/发布请求的库是“请求”。官方文件提到用get/postproxies=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"]) 
+0

哦,这就是我之前忽略的,谢谢你的回答,我会试试 – 0han