php - 不误伤搜索引擎,怎样最大限度的把爬虫ban了?

 个信2502875605 发布于 2022-11-14 09:14

自己辛辛苦苦做的站,但是没有任何防爬虫措施,一个新手都可以F12键几分钟就把爬虫写好了,自己想了一些防爬虫的方法:

  1. 把频繁访问的ip给ban了,但是这么做肯定会误伤搜索引擎,不可取,况且我写爬虫都是先爬代理池

  2. 用蜜罐法,robots.txt中写好禁止抓取的URL,然后把这个URL隐藏在文章列表页,凡是抓了这个URL的咱iptable见,但是这招貌似也烂大街了,一些人首先查看robots.txt看有没有蜜罐(比如我。。。),这个也不可取

  3. php和客户端js公用一个加密解密函数,公用一个token,js通过token生成的cookie每次都要用PHP验证,这样能排除一些简单的PHP or Python爬虫,但是phantomjs等浏览器还是能执行js,虽然客户端or服务器端都能检测出headless浏览器的特征码,但是这种无头浏览器杀不完,杀完了估计也把googlebot误伤了

  4. 把自己的所有内容列表,只显示一部分,如Flickr任何搜索都只显示4000个结果,我也只显示1000条列表,多余的不输出结果了,但这样是否会伤及SEO?

上面的方法都不完美,也许彻底ban爬虫就是一个伪命题,但有没有一种相对最好的方法,不伤及SEO和Googlebot,同事最大限度的ban掉爬虫?

2 个回答
  • 限制ip访问频率 然后抓公共代理ip 放进黑名单 其他手段不管怎么做都没有太大意义

    2022-11-14 11:07 回答
  • 只能封ip,大公司ip段都是固定的。。。而且他们的抓取策略应该也有一定规律。

    2022-11-14 11:07 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有