如何禁止搜索引擎爬虫抓取网站页面
以下列举了屏蔽主流搜索引擎爬虫(蜘蛛)抓取/索引/收录网页的几种思路。注意:是整站屏蔽,而且是尽可能的屏蔽掉所有主流搜索引擎的爬虫(蜘蛛)。
1、通过 robots.txt 文件屏蔽
可以说 robots.txt 文件是最重要的一种渠道(能和搜索引擎建立直接对话),给出以下建议:
User-agent: Baiduspider
Disallow: /
User-agent: Googlebot
Disallow: /
User-agent: Googlebot-Mobile
Disallow: /
User-agent: Googlebot-Image
Disallow:/
User-agent: Mediapartners-Google
Disallow: /
User-agent: Adsbot-Google
Disallow: /
User-agent:Feedfetcher-Google
Disallow: /
User-agent: Yahoo! Slurp
Disallow: /
User-agent: Yahoo! Slurp China
Disallow: /
User-agent: Yahoo!-AdCrawler
Disallow: /
User-agent: YoudaoBot
Disallow: /
User-agent: Sosospider
Disallow: /
User-agent: Sogou spider
Disallow: /
User-agent: Sogou web spider
Disallow: /
User-agent: MSNBot
Disallow: /
User-agent: ia_archiver
Disallow: /
User-agent: Tomato Bot
Disallow: /
User-agent: *
Disallow: /
2、通过 meta tag 屏蔽
在所有的网页头部文件添加,添加如下语句:
meta name="robots" content="noindex, nofollow"
3、通过服务器(如:Linux/nginx )配置文件设置
直接过滤 spider/robots 的IP 段。
视频网站怎么防止爬虫
分辨爬虫的善恶。
网络爬虫分为两种,一种是善意爬虫,例如百度、Google等搜索引擎的爬虫,另一种是恶意爬虫,它可能会利用网站漏洞,非法窃取网站数据,或者爬取网站内容,占用服务器资源。恶意爬虫的行为是我们所深恶痛觉的,必须想尽办法予以过滤和阻断。网站或者某一些网页不想被诸如百度、Googl等善意爬虫爬取时,我们也希望能采取一些措施。
如何防止网站被爬虫?
针对善意爬虫,几乎所有的搜索引擎爬虫,都会遵守robots协议,只要我们在网站的根目录下存放一个ASCII编码的文本文件,告诉搜索引擎哪些页面不能爬取,搜索引擎的蜘蛛便会遵照协议,不爬取指定页面的内容。
但是robots并不是一个规范,而是一种君子协议,它只对善意爬虫有效,并不能防止恶意爬虫。
针对恶意爬虫,我们可以采取以下措施来识别和阻断它。
如何反爬虫
反爬虫
就是和爬虫抗衡,减少被爬取。
因为搜索引擎的流行,网络爬虫已经成了很普及网络技术,
相当部分国内爬虫不遵守robots协议。
所有有了保护自己内容不让别人抓取的反爬虫需求
1、手工识别和拒绝爬虫的访问
2、通过识别爬虫的User-Agent信息来拒绝爬虫
3、通过网站流量统计系统和日志分析来识别爬虫
4、网站的实时反爬虫防火墙实现
5、通过JS算法,文字经过一定转换后才显示出来,容易被破解。某技术网站采用了这种方法
6、通过CSS隐藏技术,可见的页面样式和HTML里DIV结构不同,增加了爬虫的难度,同时增加自己的维护难度。
技术网站采用了这种方法
7、通过JS不让用户复制,这对非专业人员有效,对技术人员/工程师来说,没有任何效果。不少网站采用。
8、通过flash等插件技术(会被破解,同时对用户不友好,有流失用户的可能性)。早期网站用得多,移动互联网来后,这种方式对用户不友好,少有专业网站采用了。
9、图片化
A:将文字图片化,增加了维护成本,和移动端的可读性
B:将标点符号图片化,再适当增加CSS混淆,这是一种较好的办法,不影响搜索引擎收录,不影响用户使用。但影响爬虫,是一种较好的反爬虫方式,某著名的文学网站采用了这种方法
10、交给专业反爬虫公司来处理
爬虫中为了躲避反爬虫可以有什么方法
避开反爬的方法:1、模拟正常用户。反爬虫机制还会利用检测用户的行为来判断,例如Cookies来判断是不是有效的用户。
2、动态页面限制。有时候发现抓取的信息内容空白,这是因为这个网站的信息是通过用户的XHR动态返回内容信息。解决这种问题就要爬虫程序对网站进行分析,找到内容信息并抓取,才能获取内容。
3、降低IP访问频率。有时候平台为了阻止频繁访问,会设置IP在规定时间内的访问次数,超过次数就会禁止访问。所以绕过反爬虫机制可以降低爬虫的访问频率,还可以用IPIDEA代理IP换IP解决限制。
如何对付网络爬虫
可以设置robots.txt来禁止网络爬虫来爬网站。
方法:
首先,你先建一个空白文本文档(记事本),然后命名为:robots.txt;
(1)禁止所有搜索引擎访问网站的任何部分。
User-agent: *
Disallow: /
(2)允许所有的robots访问,无任何限制。
User-agent: *
Disallow:
或者
User-agent: *
Allow: /
还可以建立一个空文件robots.txt或者不建立robots.txt。
(3)仅禁止某个搜索引擎的访问(例如:百度baiduspider)
User-agent: BaiduSpider
Disallow:/
(4)允许某个搜索引擎的访问(还是百度)
User-agent: BaiduSpider
Disallow:
User-agent: *
Disallow: /
这里需要注意,如果你还需要允许谷歌bot,那么也是在“User-agent: *”前面加上,而不是在“User-agent: *”后面。
(5)禁止Spider访问特定目录和特定文件(图片、压缩文件)。
User-agent: *
Disallow: /AAA.net/
Disallow: /admin/
Disallow: .jpg$
Disallow: .rar$
这样写之后,所有搜索引擎都不会访问这2个目录。需要注意的是对每一个目录必须分开说明,而不要写出“Disallow:/AAA.net/ /admin/”。
0条大神的评论