Jos*_*itz 6 python https proxy urllib python-2.7
我管理了很多HTTPS代理(那些代理有自己的SSL连接).我正在python中构建一个诊断工具,它试图通过每个代理连接到一个页面,如果它无法通过其中一个代理连接,则给我发电子邮件.
我打算这样做的方法是使用urllib连接每个代理并返回一个页面,该页面应该用下面的代码说"成功".
def fetch(url):
connection = urllib.urlopen(
url,
proxies={'http':"https://"+server+':443'}
)
return connection.read()
print fetch(testURL)
Run Code Online (Sandbox Code Playgroud)
这将获取我想要的页面完全问题是它仍然会获取我想要的页面,即使代理服务器信息不正确或代理服务器处于非活动状态.因此要么它从不使用代理服务器,要么它尝试它并在它失败时没有它连接.
我怎么能纠正这个?
编辑:似乎没有人知道如何做到这一点.我将开始阅读其他语言库,看看他们是否能更好地处理它.有没有人知道在Go等其他语言中是否更容易?
编辑:我刚刚在下面的评论中写了这个,但我认为这可能是一个误解."代理有它自己的ssl连接.所以,如果我去google.com,我首先与foo.com进行密钥交换,然后另一个与目的地址bar.com或目的地地址baz.com进行密钥交换目的地不必须是https,代理是https"
我认为它不适用于 https 请求。它是否正确?如果是,那么上面的代码只定义了 http 的代理。尝试添加 https:
proxies={'https':"https://"+server+':443'}
另一种选择是使用requestspython 模块而不是urllib. 看看http://docs.python-requests.org/en/latest/user/advanced/#proxies
| 归档时间: |
|
| 查看次数: |
5091 次 |
| 最近记录: |