Поддерживает ли urllib2 в Python 2.6.1 прокси через https?
Я нашел следующее в http://www.voidspace.org.uk/python/articles/urllib2.shtml:
Примечание
В настоящее время urllib2 не поддерживает
получение мест https через
прокси. Это может быть проблемой.
Я пытаюсь автоматизировать вход на веб-сайт и скачивать документ, у меня есть действительное имя пользователя / пароль.
proxy_info = {
'host':"axxx", # commented out the real data
'port':"1234" # commented out the real data
}
proxy_handler = urllib2.ProxyHandler(
{"http" : "http://%(host)s:%(port)s" % proxy_info})
opener = urllib2.build_opener(proxy_handler,
urllib2.HTTPHandler(debuglevel=1),urllib2.HTTPCookieProcessor())
urllib2.install_opener(opener)
fullurl = 'https://correct.url.to.login.page.com/user=a&pswd=b' # example
req1 = urllib2.Request(url=fullurl, headers=headers)
response = urllib2.urlopen(req1)
У меня он работал на похожих страницах, но не использовал HTTPS, и я подозреваю, что он не проходит через прокси - он просто зависает так же, как когда я не указал прокси. Мне нужно выйти через прокси.
Мне нужно пройти аутентификацию, но не используя обычную аутентификацию, будет ли urllib2 выяснять аутентификацию при переходе через сайт https (я предоставляю имя пользователя / пароль для сайта через URL)?
EDIT:
Нет, я тестировал с
proxies = {
"http" : "http://%(host)s:%(port)s" % proxy_info,
"https" : "https://%(host)s:%(port)s" % proxy_info
}
proxy_handler = urllib2.ProxyHandler(proxies)
И я получаю ошибку:
urllib2.URLError: ошибка urlopen
[Errno 8] _ssl.c: 480: EOF произошел в
нарушение протокола