Robots 协议也称作爬虫协议、机器人协议,它的全名叫作网络爬虫排除标准( Robots Exclusion Protocol ),用来告诉爬虫和搜索引擎哪些页面可以抓取,哪些不可以抓取 它通常是一个叫作 robots.txt 的文本文件,一般放在网站的根目录下
当搜索爬虫访问一个站点时,它首先会检查这个站点根目录下是否存在 robots.txt 文件,如果存在, 搜索爬虫会根据其中定义的爬取范围来爬取, 如果没有找到这个文件,搜索爬虫便会访问所有可直接访问的页面:
看个robots.txt的样例:
User-agent: *
Disallow: /
Allow: /public/
这个定义就实现了对所有搜索爬虫只允许爬取putblic目录的功能,将上述内容保存成robots.txt文件,放在网站的根目录下,和网站的入口文件(比如:index.php,index.html,index.jsp)
Allow一般和Disallow一起使用,一般不会单独使用,用来排除某些操作限制。
爬虫名称
常见搜索爬虫的名称及其对应的网站
robotparse:解析robots文
robotparse模块可以实现帮助我们解析robots.txt文件,来判断我们是否有权限来爬取这个网页
urllib.robotparser.RobotFileParser(url="")
set_url():用来设置robots.txt文件的链接。如果在创建RobotFileParser对象时传入链接,那么就不需要再使用这个方法设置了
read