urllib2:通过http代理将https发送到目标

2024-04-19 04:10:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用代理服务器连接到多个目标服务器。一些目标服务器需要http,而其他服务器则需要https。我的http请求工作正常,但是urllib2忽略了https请求上的代理处理程序,直接将请求发送到目标服务器。在

我尝试了很多不同的方法,但这里有一个相当简洁的尝试:

import urllib2
cookie_handler = urllib2.HTTPCookieProcessor (cookielib.LWPCookieJar())
proxies = {'http': 'http://123.456.78.9/',
           'https': 'http://123.45.78.9/'}
proxy_handler = urllib2.ProxyHandler (proxies)
url_opener = urllib2.build_opener (proxy_handler, cookie_handler)
request = urllib2.Request ('https://example.com')
response = url_opener.open (request)

我知道urllib2从python2.6.3开始就有能力向代理服务器发送https请求,但我似乎无法让它正常工作。我用的是2.7.3。在

谢谢你的建议。在

更新:上面的代码确实有效。当我问这个问题时,我不知道为什么它不起作用。很有可能,我在https代理URL中出现了一个错误。在


Tags: https服务器httpurl处理程序代理目标cookie