Python urllib2 跟踪路由



我正在使用Python和urllib2发出POST请求,并且我让它成功工作。但是,当我一个接一个地发布多个帖子时,有时会收到错误 502 代理正在使用中。我们公司为我们代理,但我没有设置为点击代理,因为我在内部工作。有没有办法使用 urllib2 和 Python 获取 POST 请求如何路由的跟踪路由?

谢谢

我不确定你所说的"跟踪路线"是什么意思。traceroute是一个IP的东西,比HTTP低两个级别。我怀疑你想要这样的东西。您可以使用通用嗅探器或更简单地说,只需询问urllib2,即可了解是否有任何重定向,是否使用了代理等。

例如,假设您的代码如下所示:

url = 'http://example.com'
data = urllib.urlencode({'spam': 'eggs'})
req = urllib2.Request(url, data)
resp = urllib2.urlopen(req)
respdata = resp.read()

然后req.has_proxy()会告诉你它是否会使用代理,resp.geturl() == url会告诉你是否有重定向,等等。 阅读文档以获取所有可用信息。

同时,如果您不想要代理,您可以禁用urllib2选择的任何设置,使其自动配置代理(例如,在运行脚本之前unset http_proxy),覆盖默认处理程序链以确保没有ProxyHandler,构建显式OpenerDirector而不是使用默认等。

最新更新