我有一个Python 3脚本,通过SOCKS5代理发出请求。我希望能够从Azure VM运行此脚本。但是当提出请求时,我收到以下错误:
Not supported proxy scheme SOCKS5
我在Ubuntu 16.10 LTS VM上运行带有请求2.9.1的Python 3.5.2。我还安装了pysocks以请求SOCKS5。
执行请求的代码如下:
server = 'socks5://u:p@proxy.server.com:1080'
proxies = { 'https': server, 'all': None }
response = requests.get(request_url, proxies=proxies)
Te脚本在本地运行正常。所以Azure似乎不允许我使用SOCKS5代理。
我还添加了端口1080作为允许出站连接到VM的网络接口。
如何以允许来自
的SOCKS5连接的方式配置我的VM答案 0 :(得分:1)
好的,事实证明安装pysocks是不够的。
使用以下命令时:
pip3 install -U requests[socks]
安装所需的软件包以使其正常工作。
-U
与--upgrade
相同。此标志也是必需的,如果没有它,您仍然无法通过SOCKS5连接。