遵守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、先校验权限再爬取的操作流程可行性,既保障了爬取行为的合法性,也为基础友好爬虫的开发与实践积累了关键经验。

相关推荐
随意起个昵称7 小时前
区间dp-基础题目1(石子合并)
算法·动态规划
吞下星星的少年·-·8 小时前
线段树模板
算法
星空椰8 小时前
Python 面向对象高级:继承与类定义详解
开发语言·python
段一凡-华北理工大学8 小时前
2026 高炉炼铁智能化技术全景与演进路径~系列文章11:演进路径与行业未来
大数据·网络·人工智能·算法·工业智能体·高炉炼铁智能化
凯瑟琳.奥古斯特8 小时前
高阶子查询题目精炼
开发语言·数据库·python·职场和发展·数据库开发
风之所往_8 小时前
Python 3.4 新特性全面总结
python
叶小鸡8 小时前
小鸡玩算法-力扣HOT100-多维动态规划
算法·leetcode·动态规划
星马梦缘9 小时前
aaaaa
数据结构·c++·算法
狒狒热知识9 小时前
合规筑基专业赋能178软文网引领软文营销行业规范化发展
大数据
太阳上的雨天9 小时前
任何格式的文件转Markdown
python·ai