Python爬虫之爬取——解析robots.txt文件

robots.txt文件规定了爬虫在爬取该网站时有哪些约束。

robots.txt示例

下面给出一个robots.txt示例:

禁止用户代理为BadCrawler的爬虫爬取该网站
#section 1
User-agent: BadCrawler
Disallow: /

无论哪种用户代理,都应该在两次下载请求之间有5秒的时延;/trap链接是禁止链接,如果访问了这个链接,服务器就会封禁你的IP一分钟或者永久封禁
# section 2
User-agent: *
Crawl-delay: 5
Disallow: /trap

# section 3
Sitemap: http://example.com/sitemap.xml

解析robots.txt

>>>import robotparser
>>>rp = robotparser.RobotFileParser()
>>>rp.set_url('http://example.com/robots.txt')
>>>rp.read()
>>>url = 'http://example.com'
>>>user_agent = 'BadCrawler'
>>>rp.can_fetch(user_agent, url)#是否允许指定的用户代理访问网页
False
>>>user_agent = 'GoodCrawler'
>>>rp.can_fetch(user_agent, url)
>True
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值