遵守robots协议的友好爬虫

实验二 遵守 robots 协议的友好爬虫

实验目的

1.掌握robots协议的指向请求方式。

2.掌握指定网页robots协议的解析方式。

2.掌握robots协议中不同的useragent爬取给定的网站,并进行保存。

实验内容

  1. 对网址url=https://www.gov.cn/yaowen/liebiao/202502/content_7004472.htm进行robots协议的友好爬虫。

三、 程序代码及分步功能解析

import urllib.robotparser

import requests

#读取robots.txt文件

rp = urllib.robotparser.RobotFileParser()

rp.set_url("https://item.taobao.com/robots.txt")

rp.read()

useragent='Googlebot' #模拟Googlebot,能生成文件

#useragent='Baiduspider' #模拟Baiduspider,不能生成文件

url='https://www.gov.cn/yaowen/liebiao/202502/content_7004472.htm'

if rp.can_fetch(useragent, url):

print("允许抓取")

file=requests.get(url)

data=file.content #读取全部

fb=open("C:/Users/Administrator/Desktop/爬虫实践三/bd-html","wb") #将爬取的网页保存在本地

fb.write(data)

fb.close()

else:

print("不允许抓取")

四、程序调试结果

五、 实验总结

本次友好爬虫实验基于 urllib.robotparser 与 requests 库实现,核心验证了遵守 robots 协议的合规爬取流程。实验中,首先通过 RobotFileParser 解析网站 robots.txt 文件,分别以 "Googlebot" 和 "Baiduspider" 为模拟 User - Agent,判断目标政府网站文章 URL 的爬取权限,结果显示仅 "Googlebot" 获允抓取;获允后通过 requests.get () 获取网页内容,以二进制形式保存至本地指定路径,成功完成合规数据采集。此次实验直观呈现了 robots 协议的权限管控逻辑,验证了模拟合规 User - Agent、先校验权限再爬取的操作流程可行性,既保障了爬取行为的合法性,也为基础友好爬虫的开发与实践积累了关键经验。

相关推荐
零售ERP菜鸟20 分钟前
范式革命:从“信息化”到“数字化”的本质跃迁
大数据·人工智能·职场和发展·创业创新·学习方法·业界资讯
power 雀儿35 分钟前
掩码(Mask)机制 结合 多头自注意力函数
算法
会叫的恐龙39 分钟前
C++ 核心知识点汇总(第六日)(字符串)
c++·算法·字符串
Hello.Reader43 分钟前
Flink 对接 Google Cloud Storage(GCS)读写、Checkpoint、插件安装与生产配置指南
大数据·flink
小糯米6011 小时前
C++顺序表和vector
开发语言·c++·算法
阔皮大师1 小时前
INote轻量文本编辑器
java·javascript·python·c#
小法师爱分享1 小时前
StickyNotes,简单便签超实用
java·python
深蓝电商API1 小时前
处理字体反爬:woff字体文件解析实战
爬虫·python
开源技术1 小时前
Claude Opus 4.6 发布,100万上下文窗口,越贵越好用
人工智能·python
We་ct1 小时前
LeetCode 56. 合并区间:区间重叠问题的核心解法与代码解析
前端·算法·leetcode·typescript