/bot · robots.txt aware
爬虫礼仪
本页是完整的礼貌与边界政策全文公开——供你审计、屏蔽我们或与我们联系:透明就是全部意义。
身份标识
- 爬虫身份:
- afr-im-bot/1.0 (+https://afr.im/bot)
- 当前构建实际发送的 User-Agent:
- afrScanner/0.1 (+https://afr.im/bot; AI-friendliness research crawler) · scanner-0.1.0
两个标识都指向本页。若你在 robots.txt 中屏蔽我们,下一次扫描即会遵守——见下方“婉拒机制”。
请求预算
- 每站 ≤ 8 个公开 GET
- 固定探测清单见下;重试与挑战回退都封顶在硬上限内。
- 并发 ≤ 5 个站点
- 同一时间最多 5 个站点,同一主机请求间隔 ≥2s。
- 每站每 24h 最多 1 轮完整扫描
- 由扫描队列去重——提交与重扫请求合并为一轮。
- 遵守 crawl-delay
- 尊重你 robots.txt 里的 crawl-delay(实现封顶 3s,默认间隔 150ms)。
- 15s 超时、重试 1 次
- 仅网络错误时重试——绝不狂刷慢速源站。
探测清单(固定顺序)
- GET /robots.txt A1 证据源,兼取 crawl-delay 与 Sitemap 声明
- GET /llms.txt B1
- HEAD /llms-full.txt B1
- GET / A2 / A3 / B2 / B3 / B5——一次请求多路复用
- GET /sitemap.xml B4
- GET /agents.md C2
- HEAD /.well-known/openapi.* C1——探测两个扩展名
- GET 文档子域(可选) C1 / C3——仅启发式命中时
范围:只读、只看公开内容
- 只对公开 URL 发起 GET——不绕过认证、不碰表单、不注入、零写操作。
- 不保存个人信息:HTML 只保留解析后的信号与 ≤2KB 的原文摘录。
- 每站生成一份公开 JSON 快照,我们看到的一切都可被核对。
婉拒机制(Declined)
若你的 robots.txt 对 "*" 全站 Disallow 且未豁免我们的 bot,我们跳过 4–8 号探测,只保留 robots.txt 本身与被动数据(Tranco 排名、类目)。A2–C4 记为 declined / unknown——不奖不罚——且报告页会明确说明:该评级仅基于你公开的 robots 声明。
想让我们别来,不用打任何交道:robots.txt 就够了。
我们保存什么
- 引擎用于打分的信号值与 HTTP 状态码。
- 每份响应 ≤2KB 的摘录,用于报告页可展开的证据。
- 扫描的引擎版本、扫描器版本与时间戳。
屏蔽或联系我们
屏蔽:把我们的 user-agent 写进 robots.txt,下次扫描即生效。疑问、误判或下架请求:在 AFR-web 开 issue,或向 AFR-data 提纠错 PR。