如何防止网站被爬虫爬取的几种办法
来源:互联网 发布:java 工厂设计模式 编辑:程序博客网 时间:2024/06/01 20:06
对于如何防止网站被爬取,我想从以下几种方法去分析:
1.基于程序本身去防止爬取:作为爬虫程序,爬取行为是对页面的源文件爬取,如爬取静态页面的html代码,可以用jquery去模仿写html,这种方法伪装的页面就很难被爬取了,不过这种方法对程序员的要求很高。
2.基于iptables和shell脚本:可以对nginx的access.log进行策略定义,例如定义在1分钟内并发连接数超过30个ip为非法,如ip不在白名单内,则加入iptables策略封掉,当然这种的缺点是会有“误伤”,策略细粒度越小就会有更多的“误伤”,细粒度大就会使效果变差,另外还有类似的第三方工具fail2ban,利用做filter和actor对一些有危害的操作记录或是封ip。但是对于某个特定的爬虫地址(例如网易、有道)的爬取行为拒绝也很难准确做到,因为你无法准确知道这些特定的爬虫ip地址(例如网易、有道),以下是我的定位方式,不过发现由于ip库不准确造成错误的屏蔽。注意:建议不要用封ip条目的方式,iptables列表长度是65535时就会封满,服务器也就会死机。
脚本如下:
3.使用robots.txt文件:例如阻止所有的爬虫爬取,但是这种效果不是很明显。
4.使用nginx的自带功能:通过对httpuseragent阻塞来实现,包括GET/POST方式的请求,以nginx为例,具体步骤如下:
编辑nginx.conf
拒绝以wget方式的httpuseragent,增加如下内容
平滑启动
如何拒绝多种httpuseragent,内容如下:
大小写敏感匹配
注意语法:~*表示是大小写不敏感,~表示是大小写敏感
- 如何防止网站被爬虫爬取的几种办法
- 如何防止网站被爬虫爬取的几种办法
- 怎么防止网站被爬虫爬取的几种办法
- python爬虫-网站是如何防止爬虫的
- 爬虫-爬取网站上的图片
- 做网站的几种办法
- 防止用户直接访问jsp页面的几种办法
- 网站防止盗链的实现办法
- 网络爬虫爬取策略,注意爬虫爬取网站的频率
- Python爬虫——爬取网站的图片
- 恶意爬虫这样窥探、爬取、威胁你的网站
- Python爬虫爬取网站新闻
- Python爬虫 爬取翻译类网站
- Python开发爬虫,爬取网站
- 爬虫实战--爬取juubao购物券网站
- Java爬虫爬取网站图片
- python爬虫爬取网站图片
- 爬虫系列5爬取网站方法
- Kafka高可用性实现原理
- 电脑提示应用程序已停止工作异常代码40000015如何解决
- Android 5.1 CTS测试中部分问题总结
- html代码书写规范指南
- HTML
- 如何防止网站被爬虫爬取的几种办法
- Android studio Maven仓库使用
- office 2016 word 出现隐藏模块中出现编译错误: link
- 毕业设计-AudioVideo数据库ORM(二)
- select/poll/epoll对比分析
- 简单兼容ie的css写法
- with tableName的用法
- matplotlib text 文字处理
- vlc播放网络流延时参数设置