带有Python“请求”模块的代理
简短,简单的介绍了出色的Python 请求模块。
我似乎在文档中找不到变量“代理”应包含的内容。当我发送带有标准“ IP:PORT”值的字典时,它拒绝要求2个值。所以,我猜(因为文档中似乎没有涵盖),第一个值是ip,第二个值是端口?
文档只提到了这一点:
代理–(可选)字典到代理URL的映射协议。
所以我尝试了这个……我该怎么办?
proxy = { ip: port}
在将它们放入字典之前,我应该将它们转换为某种类型吗?
r = requests.get(url,headers=headers,proxies=proxy)
回答:
该proxies
“字典语法{"protocol":"ip:port", ...}
。使用它,你可以使用http,https和ftp协议为请求指定不同(或相同)的代理:
http_proxy = "http://10.10.1.10:3128"https_proxy = "https://10.10.1.11:1080"
ftp_proxy = "ftp://10.10.1.10:3128"
proxyDict = {
"http" : http_proxy,
"https" : https_proxy,
"ftp" : ftp_proxy
}
r = requests.get(url, headers=headers, proxies=proxyDict)
从requests文档推导:
method
–新Request对象的方法。
url
–新的Request对象的URL。
…
proxies
–(可选)字典映射 协议到代理URL。
…
在Linux上,你也可以通过这样做HTTP_PROXY,HTTPS_PROXY以及FTP_PROXY环境变量:
export HTTP_PROXY=10.10.1.10:3128export HTTPS_PROXY=10.10.1.11:1080
export FTP_PROXY=10.10.1.10:3128
在Windows上:
set http_proxy=10.10.1.10:3128set https_proxy=10.10.1.11:1080
set ftp_proxy=10.10.1.10:3128
以上是 带有Python“请求”模块的代理 的全部内容, 来源链接: utcz.com/qa/415600.html