python - 代理似乎被 Mechanize 忽略了?

标签 python proxy urllib2 mechanize mechanize-python

我正在使用 http 代理和 Mechanize 模块。我初始化 mechanize 对象并像这样设置代理:

self.br = mechanize.Browser()
self.br.set_proxies({"http": proxyAddress})   #proxy address is like 1.1.1.1:8080

然后我像这样打开网站:

response = self.br.open("http://google.com")

我的问题是 mechanize 似乎完全忽略了代理。如果我调试和检查 br 对象,在代理处理程序下我可以看到我的代理设置。然而,即使我给了一个糟糕的代理,Mechanize 也只是像我从未设置过代理一样继续它的业务。给了什么?

编辑: 我也试过:

mechanize.install_opener(mechanize.build_opener(mechanize.ProxyHandler({'http': "127.0.0.1:99"})))
response = mechanize.urlopen("http://google.com")

它似乎也忽略了我的代理。 (我什至没有给它一个有效的代理,它不应该因 URLError 而失败吗?)

最佳答案

在讨论电子邮件列表后想通了:

import mechanize
browser = mechanize.Browser()
browser.set_proxies(proxies={"http": "myproxy.example.com:1234"},
                proxy_bypass=lambda hostname: False)

关于python - 代理似乎被 Mechanize 忽略了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4732160/

相关文章:

python3 + pygit : "No module named ' repository'"

ssl - 使 lighttpd (lighty) 代理根据服务器名称指示转发 HTTPS 请求,而不返回 SSL 证书

php - 在代理服务器后面时从 CakePHP 访问数据库

ssl - 使用 urllib2 连接 sslv3 页面

python - Github-api 在使用 python + urllib2 传递 json 数据时给出 404

python - 从网页获取信息

python - 如何编写与 scipy.optimize.minimize() 一起使用的多变量目标函数,以便也可以使用 matplotlib 绘制它?

python - scikit learn中是否可以通过多维缩放找到相似的订单?

ios - 发送 NSMutableURLRequest 时如何在 objective-c 中使用代理服务器?

python - HTTP异常 : Deadline exceeded while waiting for HTTP response from URL