很多人说使用高匿名代理可以防止封装,但这是可以实现的。 此外,在使用代理时,必须注意透明代理。 在爬网时基本上更容易检测到这一点。 虽然业务成功率非常低,与未爬网的效果相同,但您也可以通过安装ip代理池来解决ip封装问题。
准备工具:
1、启动ip代理池,首先运行此项目至https://github.com/jhao 104/proxy _ pool
2、启动代理服务
默许拦截8080
Java-jar proxy服务器. jar
自定义监听端口
java -jar proxyServer.jar 9090
3、设置代理
设置代理后,每次请求都会发现ip不同。
实施步骤:
1、如果有更好的代理网站,或者你买了代理ip。 本人可以写方法爬上根目录中的/fetcher/proxyFetcher.py。 此方法以生成器(yield )方式返回host:ip,并且必须将自己编写的方法名称添加到根目录的setting.py文件中。
2、redis默认安装没有密码,修改setting.py,改为db _ conn=' redis 3360//@ 127.0.0.133606379/0 ',一般全部默认
3、修改超时,减小setting.py的VERIFY_TIMEOUT)。 默认10秒钟。 否则,完全不能使用这样的ip。
4、已发布的代理服务使用的是proxy_pool隐式端口。 而且,代理池的需求和代理服务一起跑。
通过进行以上操作,在一定程度上解决了我们的ip阻止问题。 感兴趣的伙伴可以试试哦~