爬虫怎么解决封IP?
目标网站国内,条件苛刻 10秒内5次点击,即遭封锁,40分钟解除
数据时效又极强,1W页,30分钟必须爬完
企业用,可付费购买IP(3000左右/月)、找不到有效的IP使用,求各位援手给指个方向 叩谢
1楼(未知网友)
除了分布式慢速抓取,貌似暂时没有别的办法了
2楼(站大爷用户)
iP问题来到这边,发现看不懂
3楼(站大爷用户)
分布式高匿名、ADSL、VPN都可以,对付淘宝就是这样做的。
4楼(未知网友)
感谢回答
5楼(未知网友)
代理ip,淘宝上有卖的
6楼(未知网友)
去搜索引擎搜一些提供免费代理的网站,写爬虫定期抓取这些网站的代理,然后用代理抓取想要的数据。
7楼(未知网友)
这种情况,最简单的解决方法就是通过并行抓取来实现。曾经做过一个系统,起100+台爬虫去抓取一个限速为10request/min的很严格的网站,10w的网页抓完也就1个多小时的时间。部署在云平台上,抓完就自动关闭爬虫,最后的总成本其实是一样的。当然,你也可以花时间去研究对方具体的屏蔽规则是怎样的,但是这种费时费力,而且人家稍微改改规则,你又要重头再来。所以,综合起来考虑,暴力并行抓取是成本最低的方案。
现在通用的一些抓取工具,都是单机版的。要做成支持云平台和并行抓取的情况,还是需要蛮多开发量的,这是切身体会。
8楼(站大爷用户)
代理可以但是必须是高匿代理
因为透明代理会吧你真实IP传递过去
手机写的具体解释自己看维基百科
如果是基于ADSL的话
其实也可以 处理要求不高
可以改造基于OpenWrt的路由比如wr703n什么的
对于处理要求高点个 整个树莓派
最后吧数据统一发到C&C
9楼(未知网友)
按照你的说法,平均2秒访问一次,即遭封锁,因此只有降低抓取速度,但是又有总量和时间的限制。有个问题:如果我平均2秒多一点访问一次,是否可以永远不被封锁?对方网站的封锁策略你是否都摸透?
按照现有条件,假设封锁条件唯一,那1万页,30分钟,平均一秒种的量是5.56次。
如果不考虑动态调度的话,那你可以设置至少6条线路来完成抓取(更正一下,应该是至少12条线路,时间仓促,计算失误)。
单线的数据回传照这个条件看起来,根本没有压力,可以在抓完一页,休息2秒的时间内,完成数据提交。
如果的确是这样的话,你可以考虑用同事家的电脑,只要开机,运行你的程序即可。适当补贴电费就可以。
如果同事这条路走不通,比较便宜的可以租用阿里云的机器,很便宜,WIN 1000多一年,Linux便宜的才几百。(当然我们也遇到过整个云都被封锁的情况,毕竟IP段相对固定)
终极解决方案就是拉几条电信的ADSL线路,光纤和电话线都可以,拨号就用CMD方式就可以了。
1000多1年,光纤10M,电话线4M,自己再买几台机器放过去就行了。
远程管理可以用Teamviewer,不需要做端口映射,傻瓜式的,有免费版本可以用。
单位里设置一台服务器负责将客户机提交的数据进行回收或写库。
以上仅供参考。
10楼(未知网友)
谁让你用一个IP了
我每次爬前,都会先去爬代理网站 抓几百个代理IP 然后验证可用的和匿名的
封装一下 谁用谁知道