蒟蒻的爬虫之旅(Python版)——robots君子协议(转载)

一、robots内容介绍

robots是一个网站对可被爬取内容的规范,之所以被戏称为君子协议,就是说这些规范不能做到技术限制,存在通过特殊手段爬取网页限制数据的行为,但很大程度上可能会因为爬取这些网站的保护数据受到法律制裁。常言道:“爬虫学的好,牢饭管到饱” 。温馨提示:爬虫是个强力的辅助工具,但不要因一己私欲逾越法律的鸿沟。

访问robots文件只需在网页后面加上/robots.txt
以https://www.taobao.com为例
在这里插入图片描述

以下内容转载自这 建议前往查看

二、robots写法

1、如果允许所有搜索引擎访问网站的所有部分

robots.txt写法如下:

User-agent: *

Disallow:

或者

User-agent: *

Allow: /

2、如果我们禁止所有搜索引擎访问网站的所有部分

robots.txt写法如下:

User-agent: *

Disallow: /

3、如果我们需要禁止某一个搜索引擎的抓取的话,比如百度,禁止百度索引我们的网站

robots.txt写法如下:

User-agent: Baiduspider

Disallow: /

4、如果我们禁止Google索引我们的网站的话,其实跟示例3一样,就是User-agent:头文件的蜘蛛名字改成谷歌的Googlebot即可

robots.txt写法如下:

User-agent: Googlebot

Disallow: /

5、如果我们只允许百度搜索引擎索引我们的网站,其他搜索引擎都不许索引

robots.txt写法如下:

User-agent: Baiduspider

Disallow:

User-agent: *

Disallow: /

6、如果我们禁止除Google外的一切搜索引擎索引我们的网站的话,写法同上

robots.txt写法如下:

User-agent: Googlebot

Disallow:

User-agent: *

Disallow: /

7、如果我们需要禁止蜘蛛访问某个目录,比如禁止css、images等目录被索引

robots.txt写法如下:

User-agent: *

Disallow: /css/

Disallow: /images/

8、如果我们禁止蜘蛛访问我们网站的某个目录,但允许索引这个目录下的某个子目录

robots.txt写法如下:

User-agent: *

Disallow: /css/

Disallow: /images/

Allow: /css/bbj

Allow: /images/bbj

这样写就禁止蜘蛛抓取css目录,但是允许抓取css目录里面的aaa目录

有些robots.txt里的Disallow或者Allow会有很多的符号,比如问号星号什么的,这些具体有什么作用呢?我们接着往下看…

9、如果使用星号“*”,主要作用是限制访问某个后缀的域名,比如禁止访问/html/目录下的所有以".html"为后缀的URL(包含子目录)

robots.txt写法如下:

User-agent: *

Disallow: /html/*.html

10、如果我们使用“$”,这个符号表示只允许访问某目录下某个后缀的文件

robots.txt写法如下:

User-agent: *

Allow: /*.asp$

Allow: /*.html$

Disallow: /

这样写就禁止了搜索引擎索引整个网站,但是允许索引收录网站里面所有以.asp和.html结尾的文件

11、如果我们禁止搜索引擎索引网站中所有的动态页面(这里限制的是带有“?”的url,例如index.asp?id=1或者index.php?id=1)

(注意:这个问号必须是英文状态下的问号,很多新手站长写成了中文状态下的问号是没有效果的)

robots.txt写法如下:

User-agent: *

Disallow: /?

PS:有些时候,我们为了节省服务器资源,需要禁止各类搜索引擎来索引我们网站上的图片,这里的办法除了使用“Disallow: /images/”这样的直接屏蔽文件夹的方式之外,还可以采取直接屏蔽图片后缀名的方式,往下看。

12、如果我们禁止Google搜索引擎抓取我们网站上的所有图片(如果你的网站有使用其他后缀的图片名称,在这里也可以直接添加)

robots.txt写法如下:

User-agent: Googlebot

Disallow: /*.jpg$

Disallow: /*.jpeg$

Disallow: /*.gif$

Disallow: /*.png$

Disallow: /*.bmp$

13、同样规则,如果我们想要禁止百度搜索引擎抓取我们网站上的所有图片

robots.txt写法如下:

User-agent: Baiduspider

Disallow: /*.jpg$

Disallow: /*.jpeg$

Disallow: /*.gif$

Disallow: /*.png$

Disallow: /*.bmp$

14、如果想要除了百度和Google之外,禁止其他搜索引擎抓取你网站的图片的话,这样写

(注意:在这里为了让各位新手站长看的更明白,因此使用一个比较笨的办法——对于单个搜索引擎单独定义。)

robots.txt写法如下:

User-agent: Baiduspider

Allow: /*.jpeg$

Allow: /*.gif$

Allow: /*.png$

Allow: /*.bmp$

User-agent: Googlebot

Allow: /*.jpeg$

Allow: /*.gif$

Allow: /*.png$

Allow: /*.bmp$

User-agent: *

Disallow: /*.jpg$

Disallow: /*.jpeg$

Disallow: /*.gif$

Disallow: /*.png$

Disallow: /*.bmp$

15、仅仅允许百度抓取网站上的“jpg”格式文件(其他搜索引擎的办法也和这个一样,只是修改一下搜索引擎的蜘蛛名称即可)

robots.txt写法如下:

User-agent: Baiduspider

Allow: /*.jpg$

Disallow: /*.jpeg$

Disallow: /*.gif$

Disallow: /*.png$

Disallow: /*.bmp$

16、仅仅禁止百度抓取网站上的“jpg”格式文件

robots.txt写法如下:

User-agent: Baiduspider

Disallow: /*.jpg$

17、如果问号“?”表示一个会话ID,我们可排除所有包含该ID的网址,确保搜索引擎不会抓取重复的网页。但是,以问号“?”结尾的网址可能是您要包含的网页版本。在此情况下,我们可以与Allow指令配合使用

robots.txt写法如下:

User-agent:*

Allow: /*?$

Disallow: /*?

写法解析:

Disallow: /*? 将会禁止抓取任何包含“?”的网址(具体而言,它将拦截所有以您的域名开头、之后接任意字符串、再然后是问号“?”、而后又是任意字符串的网址)。

Allow: /*?$ 将允许包含任何以“?”结尾的网址(具体而言,它将允许包含所有以您的域名开头、后接任意字符串,然后是问号“?”,问号之后没有任何字符的网址)。

18、如果我们想禁止搜索引擎对一些目录或者某些URL访问的话,可以截取部分的名字

robots.txt写法如下:

User-agent:*

Disallow: /abc/index.php?

这样就禁止收录索引abc目录下所有包含index.php的网址

以下内容转载自这 建议前往查看
三、常见Spider类型
1、百度蜘蛛:Baiduspider

常见百度旗下同类型蜘蛛还有这些:
网页搜索 Baiduspider
无线搜索 Baiduspider
图片搜索 Baiduspider-image
视频搜索 Baiduspider-video
新闻搜索 Baiduspider-news
百度搜藏 Baiduspider-favo
百度联盟 Baiduspider-cpro
竞价蜘蛛 Baiduspider-sfkr

2、谷歌蜘蛛:Googlebot

3、360蜘蛛:360Spider

4、SOSO蜘蛛:Sosospider

5、雅虎蜘蛛:“Yahoo! Slurp China”或者Yahoo!

6、有道蜘蛛:YoudaoBot,YodaoBot

7、搜狗蜘蛛:Sogou News Spider
搜狗蜘蛛还包括如下:
Sogou web spider
Sogou inst spider
Sogou spider2
Sogou blog
Sogou News Spider
Sogou Orion spider

8、MSN蜘蛛:msnbot,msnbot-media

9、必应蜘蛛:bingbot

10、一搜蜘蛛:YisouSpider

11、Alexa蜘蛛:ia_archiver

12、宜sou蜘蛛:EasouSpider

13、即刻蜘蛛:JikeSpider

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值