当前位置: 首页 > 面试题库 >

带有Python“请求”模块的代理

洪昊然
2023-03-14
问题内容

简短,简单的介绍了出色的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:3128
export HTTPS_PROXY=10.10.1.11:1080
export FTP_PROXY=10.10.1.10:3128

在Windows上:

set http_proxy=10.10.1.10:3128
set https_proxy=10.10.1.11:1080
set ftp_proxy=10.10.1.10:3128


 类似资料:
  • 问题内容: 我尝试了python 请求库文档中提供的示例。 使用,我得到了响应代码,但是我想获得所请求的每个页面的内容。例如,这不起作用: 问题答案: 注意 下面的答案是不适用于请求v0.13.0 +。编写此问题后,异步功能已移至。但是,你可以将其替换为下面的内容,它应该可以工作。 我已经留下了这个答案,以反映原始问题,即有关使用请求的问题。 要异步执行多个任务,你必须: 为每个对象定义一个函数(

  • 问题内容: 我正在尝试在机器上安装python 。当我尝试将软件包安装为时。我收到以下错误。 然后我按我的方式提出并安装了请求。但是仍然无法安装。请让我知道我在做什么错误。在此先感谢 问题答案: 该库需要Python 3.3或更高版本 : 要求 […] 第一个软件要求是Python 3.3或更高版本。使用该库是必需的。 和从Trove分类器: 编程语言:: Python 编程语言:: Python

  • 无论 Struts2 还是 Spring,都提供了一种控制器: 每次请求,创建实例,使用后即抛弃。 这样的控制器的好处就是可以放心的吧 request 和 response 对象放心的存成它的私有 属性,反正使用一次后就丢掉了。 在 Nutz.Mvc,所谓控制器,实际上就是 Module,默认的,所有的模块都是整个应用程序唯一的, 除非你在 Ioc 配置文件里另有说明。 那么 Nutz 可以做到每

  • 问题内容: 我正在使用python的request模块进行HTTP通信,并且想知道如何重用已经建立的TCP连接?请求模块是无状态的,如果我反复调用get以获得相同的URL,难道每次都不会创建一个新的连接吗? 谢谢!! 问题答案: 请求模块是无状态的,如果我反复调用get以获得相同的URL,它是否每次都会创建一个新的连接? 该模块是不是无状态的; 它只是让您忽略状态,并且可以选择使用全局单例状态。*

  • 问题内容: 我正在尝试将API查询输入python。命令行 提供一些json输出。myToken是一个十六进制变量,始终保持不变。我想从python进行此调用,以便我可以遍历不同的id并分析输出。有任何想法吗?在需要身份验证之前,我已经使用urllib2进行了此操作。我也查看了请求模块,但无法弄清楚该怎么做。 非常感谢。 问题答案: 该请求包有一个用于HTTP请求的一个非常好的API,加入了自定义