使用 socks5 代理的 Python 请求
Posted
技术标签:
【中文标题】使用 socks5 代理的 Python 请求【英文标题】:Python Requests using socks5 proxy 【发布时间】:2019-03-20 17:32:33 【问题描述】:我已经部署了一个 AWS ec2 实例来使用代理。我已经编辑了安全策略并允许我的机器访问服务器。我将端口 22 用于 SSH,将端口 4444 用于代理。由于某种原因,我仍然无法使用代理启动会话。
代码:
import requests
session = requests.Session()
user_agent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/72.0.3626.121 Safari/537.36'
headers = 'user-agent' : user_agent
proxies =
'http' : 'socks5h://ec2-ip-address-here.us-east-2.compute.amazonaws.com:4444',
'https' : 'socks5h://ec2-ip-address-here.us-east-2.compute.amazonaws.com:4444',
print(session.get('https://www.ipchicken.com/', headers=headers, proxies=proxies).content)
错误:
requests.exceptions.ConnectionError: SOCKSHTTPSConnectionPool(host='www.ipchicken.com', port=443): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.contrib.socks.SOCKSHTTPSConnection object at 0x107a09048>: Failed to establish a new connection: [Errno 61] Connection refused'))
我不确定我做错了什么。我跟着这个视频https://www.youtube.com/watch?v=HOL2eg0g0Ng 设置服务器。感谢所有提前回复的人。
【问题讨论】:
【参考方案1】:您需要为您的http
和https
代理使用socks5h://
。
我在 macOS 上使用 socks5://
时收到此错误。
【讨论】:
以上是关于使用 socks5 代理的 Python 请求的主要内容,如果未能解决你的问题,请参考以下文章