AI 爬虫 · 微软 Bingbot:必应和 Copilot 背后的爬虫
Bingbot 是必应的主力爬虫,必应说 Copilot 搜索用的是同一套抓取和索引。下面是微软公开的信息,每条链到出处,规则和核对方法可以直接复制。
- 搜索 / AI 回答
- 遵守 robots.txt
- IP 列表 + 反查 DNS
Bingbot 一览
微软官方公开的 Bingbot 信息,每条都链到出处。需要哪条 robots.txt 规则直接复制;日志里的 IP 是不是真的 Bingbot,也能在这里核对。
运营方对 Bingbot 的说明
每一行都链到出处。「未公开」表示在运营方自己的文档里找不到。
| 项目 | 内容 | 出处 |
|---|---|---|
| 运营方 | 微软 | 出处 |
| 官方说明 | bing.com | 出处 |
| robots.txt 标记 | Bingbot | 出处 |
| 用途 | 搜索 / AI 回答微软说 Bingbot 是必应的标准爬虫,承担必应日常绝大部分的索引抓取。 | 出处 |
| 遵守 robots.txt | 是必应说 robots.txt 告诉其爬虫如何访问网站,它控制抓取、不控制收录;抓取频率在必应站长工具里设置。 | 出处 |
| 官方 IP 列表 | www.bing.com/toolbox/bingbot.json | 出处 |
| 验证方法 | IP 列表或反查 DNS必应说先反查 DNS(域名须以 search.msn.com 结尾),再正向解析回同一 IP;或对照 bingbot.json,或用其 Verify Bingbot 工具。 | 出处 |
| 反查域名 | *.search.msn.com | 出处 |
| 核对日期 | — |
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Chrome/W.X.Y.Z Safari/537.36运营方公布的原文。 W.X.Y.Z 代表当前 Edge 版本。必应还列了一个简短写法和一个移动端 UA。
robots.txt 规则
把其中一组加到 robots.txt 末尾。标记不区分大小写。
User-agent: Bingbot
Disallow: /User-agent: Bingbot
Allow: /点名 Bingbot 的组会替代 User-agent: * 对它的规则。只想拦一个目录,把 / 换成目录,如 Disallow: /private/。
核对请求是不是真的 Bingbot
# 第 1 步 反查:域名必须以 .search.msn.com 结尾
host 203.0.113.7
# 第 2 步 正查:该域名必须解析回同一个 IP
host <hostname-from-step-1>用官方列表核对 IP
打开 www.bing.com/toolbox/bingbot.json,全选复制,连同日志里的 IP 一起粘贴到下面。核对在浏览器里完成。
JSON 或每行一个网段,IPv4 和 IPv6 都能识别。
粘贴一个 IP 地址开始核对。
官方文档里的其他说明
版本 v1.0更新于 更新记录
决定怎么处理,看这四项
每个爬虫单页都是同一张表,这四行回答了大部分问题。
用途
训练、搜索,还是替用户访问。屏蔽训练爬虫,你的页面不进后续模型;屏蔽搜索爬虫,连带失去会链回你的 AI 回答。
遵守 robots.txt
「是」是运营方自己的说法。「部分」通常指用户发起的访问可能不看 robots.txt——ChatGPT-User、Perplexity-User、meta-externalfetcher 的运营方都这么说。
官方 IP 列表 / 反查 DNS
分辨真爬虫和冒充者的唯一办法。两者都没公布,UA 就只是自称。
未公开
在运营方自己的文档里找不到。我们不拿第三方列表补空——那些列表互相矛盾,也经常过时。
事实按各单页标注的日期与运营方页面核对过。运营方会改文档,以出处链接为准。
从日志里的名字到一条规则
四步,都在浏览器里完成。
-
1
找到爬虫
输入日志里看到的名字,或你想查的公司。按用途筛选,比如只看 AI 训练类。
-
2
打开单页
看运营方说它拿来做什么、是否遵守 robots.txt;复制官方 UA,和宝塔、Nginx 日志里的对照。
-
3
生成规则
在表格里勾选,选屏蔽或放行,复制或下载 robots.txt 规则组。
-
4
检查效果
用 robots.txt 测试工具测一遍;在单页上用官方 IP 列表核对请求真假。
爬虫怎么分组,robots.txt 怎么生效
目录按 TapCub 机器人规则分组。robots.txt 按 RFC 9309 匹配:爬虫只执行 User-agent 与自己标记匹配的那一组,没有这一组才退回 *。
- 有自己一组的爬虫,完全不看
User-agent: *里的规则 - 标记不区分大小写;拼错就什么也匹配不上
- 有些名字只是标记——Google-Extended、Applebot-Extended 从不来访
- 没有公开标记的代理,robots.txt 根本管不到
| 分组 | 做什么 | 屏蔽后 |
|---|---|---|
| AI 训练 | 为模型训练或数据集收集网页 | 只要它遵守 robots.txt,你今后的页面就不进这家的训练 |
| AI 答案引擎 | 为带链接的 AI 回答建索引 | 不再作为来源被引用 |
| AI Agent | 替用户打开页面 | 助手打不开你的页面——前提是它看 robots.txt |
| 搜索引擎 | 传统搜索索引 | 从这个搜索引擎消失;必应等也为 AI 回答供数 |
四份 robots.txt 对 Bingbot 的效果
Bingbot 只看 User-agent 与 Bingbot 匹配的那一组(不区分大小写);没有这一组,才退回 User-agent: *。
| robots.txt | Bingbot 的结果 | 原因 |
|---|---|---|
User-agent: Bingbot Disallow: / | 禁止 | 它自己的组禁止了整站。 |
User-agent: * Disallow: / | 禁止 | 没有自己的组,继承通配组。 |
User-agent: * Disallow: / User-agent: Bingbot Allow: / | 允许 | 点名的组完全取代通配组,* 里的规则对它不再生效。 |
User-agent: Bingbot Disallow: /private/ | 除 /private/ 外都允许 | 只有以 /private/ 开头的路径被禁止。 |
以上是按 RFC 9309 读规则的结果;Bingbot 是否照做,以上方事实表里微软的说法为准。
AI 爬虫策略常在哪里出错
多数问题出在标记写法,或者没弄清这个爬虫到底是什么。
把公司名当标记
「OpenAI」「字节跳动」「ChatGPT」都不是标记。用目录里的准确写法——GPTBot、Bytespider、OAI-SearchBot。
连搜索爬虫一起拦
屏蔽 OAI-SearchBot、PerplexityBot 会失去能链回你的 AI 回答。按爬虫决定,不要按公司一刀切。
轻信 UA
谁都能在请求头里写「GPTBot」。没有核对 IP 或反查 DNS,请求就不算验证过。
封 IP 反而丢了退出声明
Anthropic 和 Cohere 都提醒:封它们的 IP 会让爬虫读不到 robots.txt,退出可能不稳定。
看哪些爬虫真的来过
目录告诉你爬虫自称做什么。TapCub 用五层识别、197+ 条规则把机器人和真人分开,AI 爬虫单独统计。
Bingbot 是什么?
Bingbot 由微软运营。微软说 Bingbot 是必应的标准爬虫,承担必应日常绝大部分的索引抓取。
Bingbot 遵守 robots.txt 吗?
必应说 robots.txt 告诉其爬虫如何访问网站,它控制抓取、不控制收录;抓取频率在必应站长工具里设置。
怎么屏蔽 Bingbot?
在 robots.txt 里为它单独写一组:User-agent: Bingbot、Disallow: /。微软说它遵守这些规则。只想拦某个目录,把 / 换成 /目录/。
怎么确认请求真的来自 Bingbot?
必应说先反查 DNS(域名须以 search.msn.com 结尾),再正向解析回同一 IP;或对照 bingbot.json,或用其 Verify Bingbot 工具。
怎样不进 Copilot 回答、但保留必应收录?
必应说 NOARCHIVE robots 元标签让内容不用于 Copilot 回答和 grounding 结果,NOCACHE 只允许 Copilot 使用网址、标题和摘要。在 robots.txt 里屏蔽 Bingbot 则会让必应完全停止抓取。
bingbot.json 多久更新一次?
必应要求每天刷新,因为列表随时可能变化。