带Tor的Python请求

时间:2019-03-29 21:16:44

标签: python python-requests tor socks

无法在Python请求中使用Tor

import requests
proxies = {
    'http': 'socks5://localhost:9050',
    'https': 'socks5://localhost:9050'
}
url = 'http://httpbin.org/ip'
print(requests.get(url, proxies=proxies).text)

我尝试了多种解决方案,但没有一种对我有用。我试图通过Tor通过Python发出简单的请求。预先感谢。

错误:

  

requests.exceptions.ConnectionError:   SOCKSHTTPSConnectionPool(host ='canihazip.com',port = 443):最多重试   超出网址:/(由NewConnectionError('<   位于0x031B77F0>的urllib3.contrib.socks.SOCKSHTTPSConnection对象:   无法建立新的连接:[Errno 10061]无连接   可能是因为目标机器主动拒绝了它',))

1 个答案:

答案 0 :(得分:0)

首先请确保您pip3 install requests[socks]

然后执行以下操作:

import requests
session = requests.session()
proxies = {
    'http': 'socks5h://localhost:9050',
    'https': 'socks5h://localhost:9050'
}
session.get(url, proxies=proxies)

注意,{{1}中的h

此外,您还必须在计算机(而不是浏览器)上运行Tor。您可以通过运行socks5h://使用homebrew安装tor。

您只需在终端中运行brew install tor即可启动tor实例。