当爬虫不遵守 robots 协议时,有没有防止抓取的可能?
1楼(未知网友)
全站ajax异步获取数据,然后前端填充。这样爬虫没有牛逼javascript引擎的话,抓到的都是没有数据的模板。
2楼(匿名用户)
如果还有独立 UA 应该还是可以直接在前置服务器上过滤掉吧。
如果 UA 都伪装了……就只能上机器学习方法了。
3楼(未知网友)
留个记号,晚上回答
4楼(站大爷用户)
一种是分析爬虫特征,尝试过滤爬虫的请求
另外一些可能技巧:
1. 在页面开头放上一些钓鱼的链接(一般人点不到),爬虫会去访问,一访问就把对应的ip封了
2. 页面全是图像
3. 页面内容用javascript来生成
4. 页面上不提供可以供爬虫追踪的链接,跳转都用js触发
5楼(未知网友)
一楼说的不错。
但是我觉得方法并不好。假若来的爬虫是googlebot类似的搜索引擎爬虫,你这个站岂不是就不要想出现在搜索引擎上了。
所以我觉得,最最靠谱的方法是在robots.txt里放上钓鱼连接。
正常的搜索引擎不会去访问,不遵守robots规定的也被禁止了。
还有就是限制ip的请求次数把。
但是想完全杜绝爬虫是不可能的。因为完全没有办法确定请求的背后到底是人还是爬虫。