关于 Applebot

了解有关 Apple 网络爬虫工具 Applebot 的信息。

Applebot 抓取的数据用于为多项功能提供支持,例如集成到 Apple 生态系统内许多用户体验(包括“聚焦”、Siri 和 Safari 浏览器)中的搜索技术。在 robots.txt 中启用 Applebot 可让网站内容显示在世界各地的 Apple 用户使用这些产品获得的搜索结果中。

Applebot 能够从 Web 服务器访问多种资源,包括但不限于 robots.txt、网站地图、RSS 源、HTML 以及渲染页面所需的子资源(例如 javascript、Ajax 请求、图像等)。

识别 Applebot

来自 Applebot 的流量通常可通过使用反向 DNS 以 *.applebot.apple.com 域格式显示来识别。

还有一种方法是将 IP 地址与包含在以下 JSON 文件中的 CIDR 前缀进行匹配:Applebot IP CIDR

反向 DNS

可以使用 host 命令来确定 IP 地址是不是 Applebot 的一部分。以下示例显示了 host 命令和相应的结果:

$ host 17-58-101-179.applebot.apple.com 17-58-101-179.applebot.apple.com has address 17.58.101.179.

另外,host 命令还可用于确认 DNS 是不是指向同一 IP 地址:

$ host 17.58.101.179 179.101.58.17.in-addr.arpa domain name pointer 17-58-101-179.applebot.apple.com.

用户代理

用户代理可以帮助站长识别爬虫流量,以便他们能够获得准确的爬虫活动访问日志报告,并通过 robots.txt 控制对网站的访问。

Applebot 为多个用户代理提供支持,包括“搜索”和“播客”。

搜索

Applebot 会使用以下格式来进行搜索爬网和渲染:

用户代理字符串包含“Applebot”和其他信息。以下是一般格式:

Mozilla/5.0 (Device; OS_version) AppleWebKit/WebKit_version (KHTML, like Gecko)Version/Safari_version [Mobile/Mobile_version] Safari/WebKit_version (Applebot/Applebot_version; +http://www.apple.com/go/applebot)

Mozilla/5.0 (Device; OS_version) AppleWebKit/WebKit_version (KHTML, like Gecko)Version/Safari_version [Mobile/Mobile_version] Safari/WebKit_version (Applebot/Applebot_version; +http://www.apple.com/go/applebot)

台式电脑示例:

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15(KHTML, like Gecko) Version/17.4 Safari/605.1.15 (Applebot/0.1; +http://www.apple.com/go/applebot)

移动设备示例:

Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4.1 Mobile/15E148 Safari/604.1 (Applebot/0.1; +http://www.apple.com/go/applebot)

Applebot 偶尔会更新其告知的浏览器版本,同时仍使用上述一般格式。

Apple 播客

iTMS 流量也可能来自 applebot.apple.com 主机,并可被用户代理识别:

用户代理:iTMS

iTMS 用户代理不遵循 robots.txt,因为它不是一般的搜索爬虫。它只会抓取与 Apple 播客上注册内容相关的 URL。

自定义 robot.txt 规则

在一般搜索抓取中,Applebot 会遵循以 Applebot 为目标的标准 robots.txt 指令。在以下示例中,Applebot 不会尝试抓取 /private/ 或 /not-allowed/ 下的文稿:

User-agent: Applebot Allow: / Disallow: /private/ User-agent: * Disallow: /not-allowed/

如果机器人指令没有提及 Applebot,但提及了 Googlebot,则 Apple 机器人会遵循 Googlebot 指令。

呈现和机器人规则

Applebot 可在浏览器中呈现你网站的内容。如果通过 robots.txt 阻止了 javascript、CSS 和其他资源,则可能无法正常呈现内容。这包括页面可能需要的 XHR、JS 和 CSS。

为了让 Applebot 针对页面的最佳内容创建索引,请确保 Applebot 能够访问用户呈现页面所需的一切内容。或者,确保网站简洁地呈现出来,即使所有资源都不可用。这通常称为平稳退化。

为 Applebot 自定义索引规则

Applebot 支持 HTML 文稿中的 robots 元标签。要在元标签中指定 robots 规则,请将标签置于文稿的 <head> 部分中:

<html><head> <meta name="robots" content="noindex"/> ... </head> <body>...</body> </html>

Applebot 还支持以下指令:

  • noindex:Applebot 不会针对这个页面创建索引,也不会出现在“聚焦建议”或“Siri 建议”中。

  • nosnippet:Applebot 不会为页面生成描述或网页应答。所有示意访问这个 URL 的建议都仅包含页面的标题。

  • nofollow:Applebot 不会追踪页面上的任何链接。

  • none:如上所述,Applebot 不会针对页面创建索引、生成片段或追踪页面上所示的链接。

  • all:Applebot 会针对建议提供文稿并生成内容片段,以便在具有代表性的图片旁边显示有关页面的简短描述。Applebot 可能会追踪页面上所示的链接,以提供更多建议。

要将多个指令置于单个元标签中,请使用以逗号分隔的列表或使用多个元标签。

示例:

<meta name="robots" content="nosnippet, noindex”> <meta name="robots" content=“noindex"> <meta name="robots" content=“nosnippet">

控制数据使用情况

除了遵循所有 robots.txt 规则和指令之外,Apple 还有一个辅助用户代理 Applebot-Extended,为网页发布者提供了额外的控制措施来控制 Apple 对其网站内容的使用方式。

借助 Applebot-Extended,网页发布者可以选择让自己的网站内容不能再用于训练 Apple 的基础模型,这些模型为各种 Apple 产品(包括 Apple Intelligence、Apple 服务和 Apple 开发者工具)中的生成式 AI 功能提供支持。

你可以在 robots.txt 中添加规则以禁止 Applebot-Extended,方法如下:

User-agent: Applebot-Extended Disallow: /private/

Applebot-Extended 不会抓取网页。禁止 Applebot-Extended 的网页仍然可以包含在搜索结果中。Applebot-Extended 仅用于确定如何使用由 Applebot 用户代理抓取的数据。

允许 Applebot-Extended 将有助于随时间推移而提升 Apple 生成式 AI 模型的能力和质量。

关于搜索排名

在对网页搜索结果进行排名时,Apple Search 可能会考虑以下因素:

  • 用户对于搜索结果的聚合参与度

  • 搜索词与网页主题和内容的相关性和匹配度

  • 网站其他页面中的链接的数量和质量

  • 基于用户位置的信号(近似数据)

  • 网页设计特征

在预先没有确定排名重要性的情况下,搜索结果可能会使用上述因素。Search 用户应遵守“Siri 建议、搜索与隐私”中的隐私政策。

联系我们

如有问题或疑虑,请通过以下方式与我们联系:applebot@apple.com

对于并非由 Apple 制造的产品,或并非由 Apple 控制或测试的独立网站,相关信息仅供参考,不构成 Apple 的推荐或担保。Apple 对于第三方网站或产品的选择、性能或使用不承担任何责任。Apple 对于第三方网站的准确性和可靠性不作任何声明。联系供应商以了解其他信息。

发布日期: