http

《HTTP权威指南》每章的知识点总结

View the Project on GitHub lvzhenbang/http

内容提要

概念

爬虫及爬行方式

  1. 爬虫会从根集开始爬行

  2. 爬虫会解析页面所有的url,并把它们转换绝对形式

  3. 要避免环路的出现,因为这些环路会暂停或减缓机器人的爬行过程

  1. 爬虫会陷入循环之中,从而兜圈子,浪费带宽,无法获取新页面!

  2. 爬虫无限的请求服务器,从而阻塞了真正的用户去请求服务器,这是可以作为法律诉讼理由的!

  3. 爬虫服务器会被重复的数据充斥

如何避免环路与重复

机器人的HTTP

User-Agent :机器人名字

From :提供机器人管理者的E-mail地址

Accept : 告知服务器可以发送那些媒体类型

Referer :提供包含了当前请求的URL的文档的URL

行为不当的机器人

拒绝机器人访问

如果返回2xx代码,机器人就必须对内容进行解析,并使用排斥规则从那个站点上获取内容

如果返回404,机器人认为服务器没有激活排斥规则,所以它不受限制

如果返回401或403(访问限制),表示机器人是完全受限的

如果返回503(服务器临时故障),那么机器人暂时停止访问,知道正常之后继续请求robots.txt

如果返回重定向代码,那么机器人也应该重定向到相关页面


	# this robots.txt file allows Slurp & Webcrawler to crawl
	# the public parts of our site,but no other robots...

	User-Agent: slurp
	User-Agent: webcraler
	Disallow: /private

	User-Agent: *
	Disallow:

简单聊一下搜索引擎