通过代理

时间:2018-04-02 11:17:51

标签: python ssl proxy python-3.6

通过代理请求doesn't support HTTPS,以及urllib doesn't either(提供的配方是在13年前创建的,不适用于当前的Python版本,因为我使用的是Python 3.6)。 / p>

尝试连接时,都会将b'CONNECT example.com:443 HTTP/1.0\r\n\r\n'发送到代理,并且该过程将永久停留。我正在使用this proxy

另一方面,cURL能够发送适当的参数。使用curl --proxy 127.0.0.1:8899 -v https://example.com,它会发送b'CONNECT example.com:443 HTTP/1.1\r\nHost: example.com:443\r\nUser-Agent: curl/7.30.0\r\nProxy-Connection: Keep-Alive\r\n\r\n',并且该过程将继续,直到cURL收到正确的数据。这验证了代理正在按预期工作。

有一种简单的方法可以让HTTPS在Python上使用代理吗?我知道我可以使用HTTP,但是有些资源只是我需要通过代理访问的HTTPS。

我不太关心客户端安全性。我已经尝试在urllib和请求中删除SSL验证,但它仍然无法正常工作。

更新:这不是Python Requests doesnt work for https proxy的重复,因为只关注requests,而且我在上面发布的链接requests创建者特别关注说它不支持通过代理的HTTPS。我要问的是替代requestsurllib,而不是如何让requests工作(因为它没有)。

0 个答案:

没有答案