AI 爬虫 · 华为 PetalBot:华为花瓣搜索的爬虫
PetalBot 为花瓣搜索(Petal Search)抓取,华为说同一份索引也用于华为助手和 AI 搜索。下面是华为公开的信息,每条链到出处,规则可以直接复制。
- 搜索 / AI 回答
- 遵守 robots.txt
- 可反查 DNS
PetalBot 一览
华为官方公开的 PetalBot 信息,每条都链到出处。需要哪条 robots.txt 规则直接复制;日志里的 IP 是不是真的 PetalBot,也能在这里核对。
运营方对 PetalBot 的说明
每一行都链到出处。「未公开」表示在运营方自己的文档里找不到。
| 项目 | 内容 | 出处 |
|---|---|---|
| 运营方 | 华为 | 出处 |
| 官方说明 | webmaster.petalsearch.com | 出处 |
| robots.txt 标记 | PetalBot | 出处 |
| 用途 | 搜索 / AI 回答华为说 PetalBot 抓取 PC 和移动网站,为花瓣搜索建立索引,这份索引也用于华为助手和 AI 搜索的内容推荐。 | 出处 |
| 遵守 robots.txt | 是华为说 PetalBot 遵守 robots 协议,可以用 robots.txt 禁止它抓取整站或部分文件。 | 出处 |
| 官方 IP 列表 | 未公开 | — |
| 验证方法 | 反查 + 正查 DNS华为建议先反查 DNS 再正向解析确认。正文写的主机名格式是 petalbot.*.aspiegel.com,示例却是 petalbot-{ip}.petalsearch.com,两种都可能出现。 | 出处 |
| 反查域名 | *.aspiegel.com *.petalsearch.com | 出处 |
| 核对日期 | — |
Mozilla/5.0 (Linux; Android 7.0;) AppleWebKit/537.36 (KHTML, like Gecko) Mobile Safari/537.36 (compatible; PetalBot;+https://webmaster.petalsearch.com/site/petalbot)运营方公布的原文。 这是移动端 UA。华为还列了 PC 端:Mozilla/5.0 (compatible;PetalBot;+https://webmaster.petalsearch.com/site/petalbot)。
robots.txt 规则
把其中一组加到 robots.txt 末尾。标记不区分大小写。
User-agent: PetalBot
Disallow: /User-agent: PetalBot
Allow: /点名 PetalBot 的组会替代 User-agent: * 对它的规则。只想拦一个目录,把 / 换成目录,如 Disallow: /private/。
核对请求是不是真的 PetalBot
# 第 1 步 反查:域名必须以 .aspiegel.com / .petalsearch.com 结尾
host 203.0.113.7
# 第 2 步 正查:该域名必须解析回同一个 IP
host <hostname-from-step-1>官方文档里的其他说明
版本 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 对 PetalBot 的效果
PetalBot 只看 User-agent 与 PetalBot 匹配的那一组(不区分大小写);没有这一组,才退回 User-agent: *。
| robots.txt | PetalBot 的结果 | 原因 |
|---|---|---|
User-agent: PetalBot Disallow: / | 禁止 | 它自己的组禁止了整站。 |
User-agent: * Disallow: / | 禁止 | 没有自己的组,继承通配组。 |
User-agent: * Disallow: / User-agent: PetalBot Allow: / | 允许 | 点名的组完全取代通配组,* 里的规则对它不再生效。 |
User-agent: PetalBot Disallow: /private/ | 除 /private/ 外都允许 | 只有以 /private/ 开头的路径被禁止。 |
以上是按 RFC 9309 读规则的结果;PetalBot 是否照做,以上方事实表里华为的说法为准。
AI 爬虫策略常在哪里出错
多数问题出在标记写法,或者没弄清这个爬虫到底是什么。
把公司名当标记
「OpenAI」「字节跳动」「ChatGPT」都不是标记。用目录里的准确写法——GPTBot、Bytespider、OAI-SearchBot。
连搜索爬虫一起拦
屏蔽 OAI-SearchBot、PerplexityBot 会失去能链回你的 AI 回答。按爬虫决定,不要按公司一刀切。
轻信 UA
谁都能在请求头里写「GPTBot」。没有核对 IP 或反查 DNS,请求就不算验证过。
封 IP 反而丢了退出声明
Anthropic 和 Cohere 都提醒:封它们的 IP 会让爬虫读不到 robots.txt,退出可能不稳定。
看哪些爬虫真的来过
目录告诉你爬虫自称做什么。TapCub 用五层识别、197+ 条规则把机器人和真人分开,AI 爬虫单独统计。
PetalBot 是什么?
PetalBot 由华为运营。华为说 PetalBot 抓取 PC 和移动网站,为花瓣搜索建立索引,这份索引也用于华为助手和 AI 搜索的内容推荐。
PetalBot 遵守 robots.txt 吗?
华为说 PetalBot 遵守 robots 协议,可以用 robots.txt 禁止它抓取整站或部分文件。
怎么屏蔽 PetalBot?
在 robots.txt 里为它单独写一组:User-agent: PetalBot、Disallow: /。华为说它遵守这些规则。只想拦某个目录,把 / 换成 /目录/。
怎么确认请求真的来自 PetalBot?
华为建议先反查 DNS 再正向解析确认。正文写的主机名格式是 petalbot.*.aspiegel.com,示例却是 petalbot-{ip}.petalsearch.com,两种都可能出现。
屏蔽 PetalBot 会怎样?
华为说网站页面将无法在花瓣搜索中被搜到,已经收录的页面可能要几个月才清除。华为手机用户多的站点要慎重。
PetalBot 反查出来为什么是 aspiegel.com?
华为自己的页面写的主机名格式就是 petalbot.*.aspiegel.com,示例里用的是 petalsearch.com。两者都出自华为页面,其他域名都不是 PetalBot。