You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于robots.txt规则判断站点爬取权限及403错误含义咨询

robots.txt爬取权限判断

你提供的站点robots.txt规则非常明确:

  • 对所有爬虫(User-agent: *)开放根路径下所有页面的爬取权限(Allow: /),仅禁止爬取后缀为*.notfound.html的页面
  • 你属于个人非商业学习用途,完全符合robots协议的许可范围,使用requests+BeautifulSoup爬取除*.notfound.html之外的站点内容是合规的。

无请求头返回403的原因

这个状态码不等于网站禁止爬取,属于非常普遍的基础反爬校验逻辑:

  • 绝大多数站点的服务端都会校验请求头的User-Agent字段,缺少该字段、或者字段值为爬虫默认标识的请求会被直接拒绝,返回403状态码
  • 你只需要在发起请求时补充正常浏览器的User-Agent参数即可正常访问,示例代码如下:
import requests
from bs4 import BeautifulSoup

# 模拟正常Chrome浏览器的User-Agent
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
}

response = requests.get("目标页面URL", headers=headers)
# 确认请求成功后再解析
if response.status_code == 200:
    soup = BeautifulSoup(response.text, "html.parser")
  • 额外提示:即使站点允许爬取,也建议控制爬取频率,不要短时间发起大量请求给站点服务器造成额外负担,符合学习场景的低频率访问基本不会被拦截。

内容的提问来源于stack exchange,提问作者lilak0110

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 10:15:07