Вы читаете сообщение в блоге 2013 года, в котором содержится ссылка на urllib3
проблему Github , которая была исправлена примерно через месяц , и поддержка была добавлена вrequests
вскоре после этого и присутствует во всех версиях 2.x.
Итак, вы ищете обходной путь для проблемы, которая была решена почти 5 лет назад.
Чтобы использовать HTTPS-прокси, вы просто настраиваете его так же, как HTTP-прокси :
proxies = {
'https': 'http://10.10.1.10:12345',
}
page = requests.get('https://example.org', proxies=proxies)
Если вы, например, запускаете nc -kl 1080
10.10.1.10вы увидите это:
CONNECT example.org:443 HTTP/1.0
И если вы запустите там действующий HTTPS-прокси, он будет просто работать.
Вы также утверждаете, что urllib
необрабатывать HTTPS прокси, но он всегда имеет.Настроить его немного сложнее, но все же не так сложно:
ph = urllib.request.ProxyHandler({'https': '192.168.42.100:1080'})
op = urllib.request.build_opener(p)
page = op.open('https://example.com')
… или, если вы хотите использовать его для всего, а не для одного запроса:
ph = urllib.request.ProxyHandler({'https': '192.168.42.100:1080'})
urllib.request.install_opener(urllib.request.build_opener(p))
page = urllib.request.open('https://example.com')
И, конечно, если у вас есть настройки прокси по умолчанию, настроенные соответствующим образом для вашей платформы, вам даже не нужно делать это много;и requests
, и urllib
будут просто использовать их.