robots.txt
大多数的网站都会定义robots.txt文件,这样可以让爬虫了解爬取该网站时存在哪些限制。这些限制虽然仅仅作为建议给出,但是良好的网络公民应当遵守这些限制,在爬取之前,检查robots.txt文件这一宝贵资源可以最小化爬虫被封禁的可能,而且还能发现和网站结构相关的线索。更多信息参见robotstxt
以简书的robots.txt文件为例,可以访问https://www.jianshu.com/robots.txt获取robots.txt内容,结果如下:
# See http://www.robotstxt.org/wc/norobots.html for documentation on how to use the robots.txt file
#
# To ban all spiders from the entire site uncomment the next two lines:
User-agent: *
Disallow: /search
Disallow: /convos/
Disallow: /notes/
Disallow: /admin/
Disallow: /adm/
Disallow: /p/0826cf4692f9
Disallow: /p/d8b31d20a867
Disallow: /collections/*/recommended_authors
Disallow: /trial/*
Disallow: /keyword_notes
Disallow: /stats-2017/*
User-agent: trendkite-akashic-crawler
Request-rate: 1/2 # load 1 page per 2 seconds
Crawl-delay: 60
User-agent: YisouSpider
Request-rate: 1/10 # load 1 page per 10 seconds
Crawl-delay: 60
User-agent: Cliqzbot
Disallow: /
User-agent: Googlebot
Request-rate: 2/1 # load 2 page per 1 seconds
Crawl-delay: 10
文件解读:
- 第一段
User-agent: *
Disallow: /search
Disallow: /convos/
Disallow: /notes/
Disallow: /admin/
Disallow: /adm/
Disallow: /p/0826cf4692f9
Disallow: /p/d8b31d20a867
Disallow: /collections/*/recommended_authors
Disallow: /trial/*
Disallow: /keyword_notes
Disallow: /stats-2017/*
所有用户都不允许访问以下目录:
/search
/convos/
/notes/
/admin/
/adm/
/p/0826cf4692f9
/p/d8b31d20a867
/collections//recommended_authors
/trial/
/keyword_notes
/stats-2017/*
- 第二段
User-agent: trendkite-akashic-crawler
Request-rate: 1/2 # load 1 page per 2 seconds
Crawl-delay: 60
用户trendkite-akashic-crawler抓取1个页面在2s之内,每次抓取间隔60s
- 第三段
User-agent: YisouSpider
Request-rate: 1/10 # load 1 page per 10 seconds
Crawl-delay: 60
用户YisouSpider抓取1个页面在10s之内,每次抓取间隔60s
- 第四段
User-agent: Cliqzbot
Disallow: /
用户Cliqzbot禁止访问
- 第五段
User-agent: Googlebot
Request-rate: 2/1 # load 2 page per 1 seconds
Crawl-delay: 10
用户Googlebot抓取2个页面在1s之内,每次抓取间隔10s
看来简书没有特别限制百度、360搜索等对页面的抓取,对google抓取有限制条件!
网友评论