tor 网络, scrapy, shadowsock, polipo 处理ip 的反爬虫策略
环境 ubuntu 18.04
1. 首先需要学会FQ, 在此不介绍, 也不敢介绍, 请查询shadowsock 相关
2. 下载 tor 浏览器(https://www.torproject.org/download/download.html),
https://dist.torproject.org/torbrowser/8.0.4/tor-browser-linux64-8.0.4_en-US.tar.xz
解压: xz -d tor-browser-linux64-8.0.4_en-US.tar.xz
解压: tar -xvf tor-browser-linux64-8.0.4_en-US.tar
启动: ./start-tor-browser
3. 给tor 配置代理 shadowsock。 使用 tor 浏览器访问: https://check.torproject.org/, 查看配置结果
4. 安装polipo(用于在和tor 网络完成协议转换)
5. 配置 polipo
先查看 tor 代理的端口: ps -ef | grep tor | grep Sock , 一般是9150
修改: /etc/polipo/config 添加如下(注意别用冲突的端口):
socksParentProxy = localhost:9150
proxyPort = 8123
6. 重启 polipo: service polipo restart
7. 编辑scrapy 文件: middlewares.py, 添加:
class ProxyMiddleware(object):
def process_request(self, request, spider):
request.meta[‘proxy’] = ‘http://127.0.0.1:8123’
8. 编辑scrapy 文件: settings.py, 添加:
DOWNLOADER_MIDDLEWARES = {
‘tutorial.middlewares.ProxyMiddleware’: 100,
}
9. 完成
可联系weixin: eiffel0311
备注: 有境外服务器, 并且不使用tor浏览器, 可以直接在境外服务器安装tor:
apt-get install tor
vim /etc/torrc/torrc add new line:SOCKSPort 0.0.0.0:9050
service tor restart
polipo 可以安装在本地, 也可以安装在境外服务器。