URL:http://nickcheng.com/2007/03/19/module-robotparser-in-python/
读一个Python的爬虫代码的时候看到一个名字叫做”robotparser”的模块, 查了一下, 是用来解析网站的”robots.txt”文件的. 用法很简单, 举个例子
rp = robotparser.RobotFileParser()
rp.set_url(”http://www.musi-cal.com/robots.txt”)
rp.read()
rp.can_fetch(”*”, “http://www.musi-cal.com/cgi-bin/search?city=San+Francisco”) # return False
rp.can_fetch(”*”, “http://www.musi-cal.com/”) # return True
程序很简单. 首先将类实例化, 然后用”set_url”方法设置”robots.txt”文件的路径, 这个文件一般都在网站的根目录. 接着调用”read”方法来解析这个文件. 最后就是用”can_fetch”方法来判断这个网站是否让你的程序(爬虫)访问某个网站内的链接了!
如果这个网站没有”robots.txt”文件的话, 在”read”方法后查看”rp.errcode”属性, 会看到404的返回值, 如果有这个文件就是200的返回值了!
相关链接
官方文档: http://docs.python.org/lib/module-robotparser.html
一个家伙不满意自带的这个东东, 自己又写了一个: http://nikitathespider.com/python/rerp/
robots.txt规范: http://www.robotstxt.org/wc/norobots.html
分享到:
相关推荐
python模块详解 各个模块的详解 核心模块 1.1. 介绍 1.2. _ _builtin_ _ 模块 1.3. exceptions 模块 1.4. os 模块 1.5. os.path 模块 1.6. stat 模块 1.7. string 模块 1.8. re 模块 1.9. math 模块 1.10....
robotparser 模块 o 7.10. ftplib 模块 o 7.11. gopherlib 模块 o 7.12. httplib 模块 o 7.13. poplib 模块 o 7.14. imaplib 模块 o 7.15. smtplib 模块 o 7.16. telnetlib 模块 o 7.17. nntplib 模块 o 7.18. ...
Python3中将python2.7的urllib和urllib2两个包合并成了⼀个urllib库,其主要包括⼀下模块: urllib.request 请求模块 urllib.error 异常处理模块 urllib.parse url解析模块 urllib.robotparser robots.txt解析模块 ...
python内置的HTTP请求库,包含四个模块:request、error、parse、robotparser。request:最基本的HTTP请求模块,可以用来模拟发送请求。 2)Request url:请求地址,必传参数。 data:附加参数(from表数据),bytes...
文章目录1、urllib库介绍2、request模块3、error模块4、parse...查看Python源文件知道urllib库包括5个模块,分别是:request、error、parse、robotparser、response。但我翻阅了一些资料后,发现robotparser和response
robots Python模块为robots.txt文件实现了解析器。 推荐使用的类是robots.RobotsParser 。 还存在一个薄外观的robots.RobotFileParser来替代python标准库中提供的 。 robots.RobotFileParser类公开了一个与urllib....
刚刚接触爬虫,基础的东西得时时回顾才行,这么全面的帖子无论如何也得厚着脸皮转过来啊!...4. urllib.robotparser robots.txt 解析模块 Urllib 库下的几种模块基本使用如下: urllib.request 关于 urlli
4 个模块: urllib.request :HTTP 请求模块,模拟发送请求。 urllib.error : 异常处理模块,捕获请求错误。 urllib.parse : URL...urllib.robotparser :robots.txt解析模块,识别网站的robots.txt 文件。
Urllib是Python内置的HTTP请求库,它包含四个模块: 1、request,最基本的 HTTP 请求模块,用来模拟发送请求,就像在浏览器里输入网址然后敲击回车一样,只需要给库方法传入 URL 与额外的参数,就可以模拟这个...
Python爬虫实战系列之二:网络请求 4 个模块: urllib.request :HTTP 请求模块,模拟发送请求。 urllib.error : 异常处理模块,捕获...urllib.robotparser :robots.txt解析模块,识别网站的robots.txt 文件。