在 Ahrefs,我们运营两大主要网络爬虫——AhrefsBot 和 AhrefsSiteAudit,以支持我们的工具和服务组合。我们的抓取目标是帮助网站所有者提升在线存在,同时尽可能降低对其服务器的负载,并确保抓取行为安全、透明。
Obeys robots.txt: Yes by default (website owners can request to disobey robots.txt on their sites)
Obeys crawl delay: Yes by default (website owners can request to disobey crawl delay on their sites)
AhrefsBot 会索引有关网站及其内容的最新准确信息,同时分析它们之间的链接关系。这些数据极具价值,可通过多种方式加以利用:
两款爬虫均严格遵循 robots.txt 文件中的 disallow 和 allow 规则,以及 crawl-delay 指令。只有经过验证的网站所有者才能授权 AhrefsSiteAudit 爬虫忽略其网站上的 robots.txt 规则,以便检查通常禁止抓取的网站部分是否存在问题。
在请求 HTML 页面时,我们严格遵守爬取延迟设置,确保不超出规定的速率限制。但在渲染 JavaScript 时则无法遵循此规则。当我们的爬虫渲染页面时,可能会同时请求多个资源(如图片、脚本、样式表),这可能导致服务器日志中显示的请求频率超出抓取延迟设置的允许范围。这种行为模拟了真实用户的访问体验,因为现代网页通常需要同时加载多个资源才能实现正常渲染和运行。
在抓取过程中,我们会缓存频繁请求的文件(如图片、CSS、JS)以减少重复抓取,从而降低带宽消耗并减轻服务器负载。
如果遇到非 200 状态代码(尤其是 4xx 或 5xx 错误),我们会自动降低该站点的抓取速度,从而确保对可能出现故障或高服务器负载的网站施加的压力最小化。
我们深知主机服务商、CDN 服务商和 CMS 平台可能希望管控爬虫与其客户网站之间的交互。我们公开的 IP 地址和用户代理字符串可让您或您的服务提供商快速验证 Ahrefs 的合法流量。我们始终致力于保持抓取行为的透明性,以建立信任并促进合作。如有任何疑问,请发送邮件至 [email protected],我们将竭诚为您提供帮助。
我们提供清晰且用户友好的选项,方便您管理我们的爬虫:
要更改 AhrefsBot 或 AhrefsSiteAudit 的访问频率,只需在 robots.txt 文件中设置允许的最小访问间隔时间即可:
(其中 Crawl-Delay 值是以秒为单位的时间。)
如果您想阻止 AhrefsBot 或 AhrefsSiteAudit 访问您的网站或特定板块,请使用 Disallow 指令:
请注意,AhrefsBot 可能需要一些时间来获取您 robots.txt 文件中的更改。这一过程将在下一次计划抓取之前完成。已验证的网站所有者可以允许 AhrefsSiteAudit 爬虫程序无视其网站上的 robots.txt 规则,以便检查通常禁止抓取的网站部分是否存在问题。
此外,如果您的 robots.txt 文件包含错误,我们的爬虫将无法识别您的指令,并会继续按照之前的方式抓取您的网站。更多关于 robots.txt 的信息,请访问 www.robotstxt.org。
您可以临时降低 AhrefsBot 的抓取速度。当网站出现故障或进行基础设施变更需要减轻服务器负载时,这一功能尤为实用。您可以通过在故障或维护期间返回 4xx 或 5xx HTTP 状态码来临时降低抓取速率。我们的爬虫程序会检测到这些错误代码并自动退避。
AhrefsSiteAudit 爬虫通过将抓取频率限制为每分钟最多 30 个 URL,来避免对网站服务器造成过大负载。如果您是网站所有者,并希望更快发现网站问题,可以自行提高对自己网站的抓取速度。为此,您需要在 Site Audit 工具中完成所有权验证。
如果您对我们抓取的频率有任何疑虑,或发现可疑流量需要确认,请通过 [email protected] 联系我们。我们将为您澄清并解决任何问题。