Scrapy 与 TOR (Windows)
Scrapy with TOR (Windows)
我用几个蜘蛛创建了一个Scrapy项目来抓取一些网站。现在我想使用 TOR 来:
- 对已抓取的服务器隐藏我的 ip;
- 将我的请求关联到不同的ips,模拟不同用户的访问。
我已经阅读了一些相关信息,例如:
using tor with scrapy framework,
这些链接的答案对我没有帮助。我应该采取哪些步骤才能使 Scrapy 与 TOR 正常工作?
编辑 1:
考虑到答案 1,我开始安装 TOR。当我使用 Windows 时,我下载了 TOR Expert Bundle (https://www.torproject.org/dist/torbrowser/5.0.1/tor-win32-0.2.6.10.zip) and read the chapter about how to configure TOR as a relay (https://www.torproject.org/docs/tor-doc-windows.html.en)。不幸的是,Windows 上几乎没有关于如何执行此操作的信息。如果我解压缩下载的存档和 运行 文件 Tor\Tor.exe,什么也不会发生。但是,我可以在任务管理器中看到实例化了一个新进程。我不知道从这里开始的最佳方法是什么。
此处有详细的分步说明
http://blog.privatenode.in/torifying-scrapy-project-on-ubuntu/
基本步骤有:
- 安装 Tor 和 Polipo(对于 linux 这可能需要添加存储库)。
- 配置 Polipo 以使用 SOCK 连接与 TOR 对话(见上文 link)。
- 创建自定义中间件以使用 tor 作为 http 代理并随机更改 scrapy 用户代理
- 要抑制上面例子中的折旧警告,写
'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware': None,
而不是 'scrapy.contrib.downloadermiddleware.useragent.UserAgentMiddleware': None,
你的情况是什么?您是否考虑过租用代理服务器?
经过大量研究,我找到了一种方法来设置我的 Scrapy 项目以在 Windows OS:
上使用 TOR
- 下载 Windows (1) 的 TOR Expert Bundle 并将文件解压缩到文件夹(例如 \tor-win32-0.2.6.10)。
最近的 TOR Windows 版本没有图形用户界面 (2)。可能只能通过配置文件和 cmd 命令设置 TOR,但对我来说,最好的选择是使用 Vidalia。下载它 (3) 并将文件解压缩到一个文件夹中(例如 vidalia-standalone-0.2.21-win32)。 运行 "Start Vidalia.exe" 并转到“设置”。在 "General" 选项卡上,将 Vidalia 指向 TOR (\tor-win32-0.2.6.10\Tor\tor.exe).
检查 "Advanced" 选项卡和 "Tor Configuration File" 部分 torrc 文件。我配置了下一个端口:
控制端口 9151
袜子端口 9050
单击 Vidalia 控制面板上的启动 Tor UI。经过一些处理后,您应该在状态上看到消息 "Connected to the Tor network!".
下载 Polipo 代理 (4) 并将文件解压缩到一个文件夹(例如 polipo-1.1.0-win32)。在 link 上阅读有关此代理的信息 5.
编辑文件 config.sample 并向其中添加下一行(例如,在文件的开头):
socksParentProxy = "localhost:9050"
socksProxyType = socks5
diskCacheRoot = ""
通过cmd启动Polipo。转到解压缩文件的文件夹并输入下一个命令 "polipo.exe -c config.sample".
现在您已经启动了 Polipo 和 TOR,并且 运行。 Polipo 将使用 SOCKS 协议通过端口 9050 将任何请求重定向到 TOR。 Polipo 将通过端口 8123 接收任何重定向的 HTTP 请求。
现在您可以按照教程的其余部分进行操作 "Torifying Scrapy Project On Ubuntu" (6)。继续执行教程说明如何测试 TOR/Polipo 通信的步骤。
链接:
- https://www.torproject.org/download/download.html.en
- https://tor.stackexchange.com/questions/6496/tor-expert-bundle-on-windows-no-installation-instructions
- https://people.torproject.org/~erinn/vidalia-standalone-bundles/
- http://www.pps.univ-paris-diderot.fr/~jch/software/files/polipo/
- http://www.pps.univ-paris-diderot.fr/~jch/software/polipo/tor.html
- http://blog.privatenode.in/torifying-scrapy-project-on-ubuntu
我用几个蜘蛛创建了一个Scrapy项目来抓取一些网站。现在我想使用 TOR 来:
- 对已抓取的服务器隐藏我的 ip;
- 将我的请求关联到不同的ips,模拟不同用户的访问。
我已经阅读了一些相关信息,例如: using tor with scrapy framework,
这些链接的答案对我没有帮助。我应该采取哪些步骤才能使 Scrapy 与 TOR 正常工作?
编辑 1:
考虑到答案 1,我开始安装 TOR。当我使用 Windows 时,我下载了 TOR Expert Bundle (https://www.torproject.org/dist/torbrowser/5.0.1/tor-win32-0.2.6.10.zip) and read the chapter about how to configure TOR as a relay (https://www.torproject.org/docs/tor-doc-windows.html.en)。不幸的是,Windows 上几乎没有关于如何执行此操作的信息。如果我解压缩下载的存档和 运行 文件 Tor\Tor.exe,什么也不会发生。但是,我可以在任务管理器中看到实例化了一个新进程。我不知道从这里开始的最佳方法是什么。
此处有详细的分步说明 http://blog.privatenode.in/torifying-scrapy-project-on-ubuntu/
基本步骤有:
- 安装 Tor 和 Polipo(对于 linux 这可能需要添加存储库)。
- 配置 Polipo 以使用 SOCK 连接与 TOR 对话(见上文 link)。
- 创建自定义中间件以使用 tor 作为 http 代理并随机更改 scrapy 用户代理
- 要抑制上面例子中的折旧警告,写
'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware': None,
而不是'scrapy.contrib.downloadermiddleware.useragent.UserAgentMiddleware': None,
你的情况是什么?您是否考虑过租用代理服务器?
经过大量研究,我找到了一种方法来设置我的 Scrapy 项目以在 Windows OS:
上使用 TOR- 下载 Windows (1) 的 TOR Expert Bundle 并将文件解压缩到文件夹(例如 \tor-win32-0.2.6.10)。
最近的 TOR Windows 版本没有图形用户界面 (2)。可能只能通过配置文件和 cmd 命令设置 TOR,但对我来说,最好的选择是使用 Vidalia。下载它 (3) 并将文件解压缩到一个文件夹中(例如 vidalia-standalone-0.2.21-win32)。 运行 "Start Vidalia.exe" 并转到“设置”。在 "General" 选项卡上,将 Vidalia 指向 TOR (\tor-win32-0.2.6.10\Tor\tor.exe).
检查 "Advanced" 选项卡和 "Tor Configuration File" 部分 torrc 文件。我配置了下一个端口:
控制端口 9151 袜子端口 9050
单击 Vidalia 控制面板上的启动 Tor UI。经过一些处理后,您应该在状态上看到消息 "Connected to the Tor network!".
下载 Polipo 代理 (4) 并将文件解压缩到一个文件夹(例如 polipo-1.1.0-win32)。在 link 上阅读有关此代理的信息 5.
编辑文件 config.sample 并向其中添加下一行(例如,在文件的开头):
socksParentProxy = "localhost:9050" socksProxyType = socks5 diskCacheRoot = ""
通过cmd启动Polipo。转到解压缩文件的文件夹并输入下一个命令 "polipo.exe -c config.sample".
现在您已经启动了 Polipo 和 TOR,并且 运行。 Polipo 将使用 SOCKS 协议通过端口 9050 将任何请求重定向到 TOR。 Polipo 将通过端口 8123 接收任何重定向的 HTTP 请求。
现在您可以按照教程的其余部分进行操作 "Torifying Scrapy Project On Ubuntu" (6)。继续执行教程说明如何测试 TOR/Polipo 通信的步骤。
链接:
- https://www.torproject.org/download/download.html.en
- https://tor.stackexchange.com/questions/6496/tor-expert-bundle-on-windows-no-installation-instructions
- https://people.torproject.org/~erinn/vidalia-standalone-bundles/
- http://www.pps.univ-paris-diderot.fr/~jch/software/files/polipo/
- http://www.pps.univ-paris-diderot.fr/~jch/software/polipo/tor.html
- http://blog.privatenode.in/torifying-scrapy-project-on-ubuntu