我想使用python 3进行匿名web请求。
我尝试了一些建议,比如:在Tor 上使用Python发出请求
我已经设法得到一个假的ip使用这个片段:
安装
pip安装请求请求〔socks〕
基本用法
import requests
def get_tor_session():
session = requests.session()
# Tor uses the 9050 port as the default socks port
session.proxies = {'http': 'socks5://127.0.0.1:9150',
'https': 'socks5://127.0.0.1:9150'}
return session
# Make a request through the Tor connection
# IP visible through Tor
session = get_tor_session()
print(session.get("http://httpbin.org/ip").text)
# Above should print an IP different than your public IP
# Following prints your normal public IP
print(requests.get("http://httpbin.org/ip").text)
但这只适用于9150端口和tor网络浏览器工作时。我想在没有tor浏览器的情况下提出请求,因为我想对整个事情进行Dockerize。
我读过关于Socks5的文章,正如你所看到的,我已经安装了它,但当我在9050端口上对同一片段提出请求时,我得到了:
requests.exceptions.Connection错误:SOCKSHTTPConnectionPool(主机='httpbin.org',端口=80(:最大重试次数超过url:/ip(由NewConnectionError(":无法建立新连接:[WinError10061]由于目标计算机处于活动状态,因此无法建立连接拒绝’,(
如何解决它?
谢谢!
10061是"拒绝连接">
这意味着在您尝试连接的端口上没有任何侦听,没有任何服务正在启动和运行(没有打开的端口(或目标IP上的防火墙阻止它
您可以使用telnet 测试该端口
telnet `IP` `PORT`
还要检查Windows上的端口问题:此处
我也面临着这个问题,在我的情况下,我的tor服务没有运行,实际上我使用的是kalitorify
,这是一个透明的代理,每当我使用它时,我都无法使用谷歌搜索或类似的正常网站,所以为了使用这些网站,我关闭了我的kalitorify服务,它也关闭了你的tor服务
所以,如果你也在使用它,那么也要检查一次