恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

wigolo 如何礼貌爬取:robots.txt、sitemap 优先与每域限速的完整拆解

  • 首页
  • 资讯中心
  • /
  • wigolo 如何礼貌爬取:robots.txt、sitemap 优先与每域限速的完整拆解

相关资讯

TMS320F28377D AD/DA回环工程调试:从配置到校准 2026/9/16 19:43:20
OTN传送网架构详解:光层电层分层、ODUk交叉与故障排查 2026/9/16 19:43:20
Proteus仿真24C02:51单片机I2C时序与页写避坑指南 2026/9/16 19:43:20

最新资讯

System Prompt泄露全解析:从攻击路径到防护实践
Plate Slate v2:可覆写编辑器实例表面的恢复设计(Instance Surface Recovery)
Hydra 1.0 对象实例化配置升级指南:从 ObjectConf/params 到 `_target_` 扁平化结构
OpenClaw 跑 ACP Agents:Codex 的 Key 用 TaoToken
PraisonAI Doctor 健康检查与诊断系统:从 CLI 到 CI/CD 的完整实战指南
C#销售管理系统开发实战:从数据访问层到收银前端

今日推荐

IoT-For-Beginners 智能语音计时器:Wio Terminal 基于 DMAC 与 Flash 的音频采集实战
基于MATLAB的CRI显色指数计算:从SPD光谱到Ra的完整流程
JSP+Servlet+MySQL博客系统源码部署与优化全攻略

本周热门

AI SDK Harness 依赖更新指南:掌握 harness 包 SDK 依赖的升级、桥接同步与一致性校验
Refine v5 Ant Design NumberField 组件实战:基于 Intl 的本地化数字格式化
Flutter应用改名全指南:从Android到iOS的配置与工具实践

本月精选

自研推理加速器Redwood:两周内实现PyTorch模型高效部署的实战教程
V4L2摄像头采集实战:从camera_client.rar到出图全流程解析
从“谁发明了钢琴键”到知识问答智能体:RAG与记忆工程实践

wigolo 如何礼貌爬取:robots.txt、sitemap 优先与每域限速的完整拆解

发布时间:2026/9/16 19:48:20
wigolo 如何礼貌爬取:robots.txt、sitemap 优先与每域限速的完整拆解 wigolo 如何礼貌爬取robots.txt、sitemap 优先与每域限速的完整拆解【免费下载链接】wigoloThe go-to web for your AI coding agent — local-first search, fetch, crawl research over MCP. No API keys, no cloud, $0/query. Public beta.项目地址: https://gitcode.com/GitHub_Trending/wi/wigolowigolo 是一个本地优先local-first的 AI 编程代理网络工具通过 MCP 为 Claude Code、Cursor 等代理提供搜索、抓取、爬取crawl与研究能力——无需 API Key、不经过云端、零成本。很多人关心让它批量抓取一个站点时会不会变成“ rude bot”本文基于 wigolo 的爬虫源码拆解它如何做到礼貌爬取自动遵守 robots.txt、sitemap 优先、每域名独立限速外加 429 退避机制 ️为什么爬虫要“讲礼貌”批量抓取最大的风险是打扰目标站点请求过猛会被封 IP抓取被禁止的路径则不合规。wigolo 的答案是把“礼貌”做成默认行为而不是可选项——默认开启 robots 检查respectRobotsTxt默认为true见 config.ts。第一步robots.txt 规则解析每次爬取开始前crawler 会先抓取种子站点的/robots.txt并构建规则解析器crawler.ts。解析逻辑在 robots.ts 中有几个关键设计只认通配符代理只解析user-agent: *段落的规则不为自己注册特殊代理身份robots.ts最长前缀匹配判断某路径是否允许时取匹配路径最长的一条规则长度相同时Allow优先于Disallowrobots.tsCrawl-delay 不是摆设解析器会提取Crawl-delay指令并注入限速器真正影响后续请求间隔robots.ts顺藤摸瓜找 sitemaprobots.txt 里的Sitemap:声明会被提取出来作为 sitemap 探测的首选线索sitemap.ts。在 BFS 遍历过程中每一个待抓 URL 都会先过 robots 检查被禁止的路径直接跳过并记录调试日志crawler.ts。第二步sitemap 优先先抓最新页面当策略为auto时wigolo 会先探测站点是否有可用 sitemap有就走 sitemap 路径没有才回退到广度优先遍历crawler.ts。探测顺序在 sitemap-first.ts 中定义robots.txt 中声明的Sitemap:地址最权威/sitemap.xml/sitemap_index.xml。两个细节保证了探测“不误伤”sitemap 必须列出至少 5 个 URL才视为有效否则降级为普通遍历sitemap-first.ts遇到 sitemap 索引sitemapindex时最多展开 5 个子 sitemap避免在巨型索引上失控。排序策略同样讲究sitemap 里往往是按字母序排放的 URL若直接按文档顺序抓预算耗尽时最没价值的页面反而占坑。wigolo 的 sortSitemapEntries 按lastmod降序排列——最近修改的页面排在最前没有 lastmod 的再按priority降序最后保持原始顺序做稳定排序。这样在max_pages截断下存活的是最有信息量的页面。第三步每域限速器给每个站点独立排队限速器实现于 rate-limiter.ts核心是一个按域名隔离的状态表每个域名维护并发数、上次请求时间和等待队列维度默认值可覆盖方式单域并发2CRAWL_CONCURRENCY请求间隔500msCRAWL_DELAY_MS内网地址延迟0msCRAWL_PRIVATE_DELAY_MS内网并发独立配置crawlPrivateConcurrency见 config.ts它的工作机制串行间隔 并发上限双保险即使当前并发未达上限请求之间也必须满足间隔达到上限后新请求进入该域名的 FIFO 队列请求完成时再唤醒下一个rate-limiter.tsrobots 延迟自动叠加生效间隔 max(配置间隔, robots.txt 的 Crawl-delay)站点要求更慢就跟得更慢rate-limiter.ts内网更谨慎私有地址使用独立的延迟与并发参数避免对内部服务施压rate-limiter.ts。也就是说爬a.com和b.com的限速互不干扰——这是“每域限速”区别于全局单一节流的关键。彩蛋被 429 时学会退避礼貌不止于事先约定。当站点主动返回 429 并要求缓一缓时抓取路由会解析Retry-After响应头支持秒数与 HTTP 日期两种格式换算成有界的退避窗口无头文件时默认退避 60 秒且任何退避窗口上限为 5 分钟防止一个“99999 秒”的恶意响应把域名长时间挂起politeness.ts。如何上手体验 wigolo 的礼貌爬取安装后可通过 CLI 或 MCP 工具直接使用 crawl 能力文档见 docs/tools.md 与 docs/cli.md对应的技能说明在 skills/wigolo-crawl/SKILL.md爬取行为测试可参考 tests/integration/crawl。小结wigolo 的礼貌爬取可以概括为一条流水线先问 robots访问边界 Crawl-delay→ 再查 sitemap抓对页面、抓新页面→ 全程每域限速抓得慢一点→ 遇到 429 主动退避听话一点。四道关卡全部默认生效让本地代理批量抓取网页时既不越界、也不扰民 【免费下载链接】wigoloThe go-to web for your AI coding agent — local-first search, fetch, crawl research over MCP. No API keys, no cloud, $0/query. Public beta.项目地址: https://gitcode.com/GitHub_Trending/wi/wigolo创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号