Scrapy Tor端口9051不侦听

Scrapy Tor端口9051不侦听,scrapy,port,tor,Scrapy,Port,Tor,我完全是新手。。。两周前我还不知道废话是什么意思。经过一些研究,我使用beautifulsoup和selenium实现了一个python3代码。效果很好。现在,考虑到我需要刮取的数据量,我知道刮取1是正确的工具,特别是如果我轮换IP地址的话。我找到了一些理论上应该可以工作的代码。但是,当调用RetryChangeProxyMiddleware时,我会收到以下消息: [WinError 10061]无法建立连接,因为目标计算机主动拒绝连接 因此,我使用了: from stem.control im

我完全是新手。。。两周前我还不知道废话是什么意思。经过一些研究,我使用beautifulsoup和selenium实现了一个python3代码。效果很好。现在,考虑到我需要刮取的数据量,我知道刮取1是正确的工具,特别是如果我轮换IP地址的话。我找到了一些理论上应该可以工作的代码。但是,当调用RetryChangeProxyMiddleware时,我会收到以下消息:

[WinError 10061]无法建立连接,因为目标计算机主动拒绝连接

因此,我使用了:

from stem.control import Controller
控制器。从_端口(端口=9051)作为控制器:

controller.authenticate('canal007')  # provide the password here if you set one

bytes_read = controller.get_info("traffic/read")
bytes_written = controller.get_info("traffic/written")

print("My Tor relay has read %s bytes and written %s." % (bytes_read, bytes_written))
返回相同的消息。所以我想我有一个“端口监听问题”。我应该对我的windows计算机拥有管理员权限。我相信我没有使用任何代理(我在这里很谨慎,因为我不是专家,…)。我试图打开和关闭Windows防火墙,但它没有改变任何事情

Tor已安装,当我运行它时,它可以工作。保存一些网站,但我尝试用scrapy刮的网站可以通过Tor访问

这是我的torrc.orig.1文件: 控制端口9051 验证“mypasswd”

我使用tor.exe生成了一个hashkey,并在以下中间件中使用它,我使用scrapy调用该中间件:

def process_request(self, request, spider):
        if random.choice(range(1,100)) <= 80:
            logging.log(logging.INFO, 'Changing proxy')
            tn = telnetlib.Telnet('127.0.0.1', 9051)
            tn.read_until("Escape character is '^]'.", 2)
            tn.write('AUTHENTICATE "<hashkey>"\r\n')
            tn.read_until("250 OK", 2)
            tn.write("signal NEWNYM\r\n")
            tn.read_until("250 OK", 2)
            tn.write("quit\r\n")
            tn.close()
            logging.log(logging.INFO, '>>>> Proxy changed. Sleep Time')
            time.sleep(10)
def进程请求(self、request、spider):

if random.choice(范围(1100))如果您在Windows上运行
netstat-anp
,它是否会在9051上显示Tor侦听?您是否发现问题所在?如果您在Windows上运行
netstat-anp
,它是否会在9051上显示Tor侦听?您是否发现问题所在?