跳到主要内容

如何抓取预发布网站

2024-02-03

了解如何抓取预发布或开发网站,包括考虑 robots.txt、身份验证和 SEO Spider 配置。


抓取预发布网站简介

当网站处于预发布或开发阶段时,应限制搜索引擎对其进行抓取和索引。这可以避免它在搜索结果中排名,并可能与正式发布的网站竞争和蚕食流量。

在预发布环境中的网站上线之前对其进行审核至关重要,而使用 Screaming Frog SEO Spider 抓取它们可以提供帮助。

有多种方法可以阻止搜索引擎访问预发布网站,或避免内容被索引,包括设置登录验证、使用 robots.txt、noindex 等。预发布服务器的性能通常不如生产环境,而且仍在开发中的网站通常也更脆弱。

本教程将指导您如何配置 Screaming Frog SEO Spider 来抓取任何预发布服务器和网站。即使是经验丰富的 SEO 人员也可能会遇到一些“陷阱”。


如何抓取预发布服务器

预发布网站通常被限制搜索引擎和爬虫对其进行抓取。有多种方法可以阻止抓取,每种方法都需要略有不同的方法或配置才能绕过。

Robots.txt

如果网站使用 robots.txt 来阻止抓取,那么 SEO Spider 中只会返回一个 URL。

在“状态”和“索引状态”列中将显示“被 robots.txt 阻止”消息,并且索引状态设置为“不可索引”。

URL blocked by robots.txt

要抓取该网站,您需要转到“配置 > Robots.txt”,然后选择“忽略 robots.txt”。

Ignore robots.txt

如果 robots.txt 文件包含您希望 SEO Spider 遵守的禁止指令,请通过“配置 > robots.txt”使用“自定义 robots”,以删除全局禁止并保留其他指令。

Custom robots.txt

这意味着您可以模拟在实际环境中的抓取方式。

如果您使用的是 SEO Spider 的免费版本,无法访问配置,并且您已阻止您的网站被 robots.txt 抓取 - 您可以在 robots.txt 中为“Screaming Frog SEO Spider”用户代理使用“允许”指令来解决此问题。

User-agent: Screaming Frog SEO Spider Allow: /

User-agent: * Disallow: /

然后,SEO Spider 将遵循允许指令,而所有其他机器人将保持被阻止状态。

身份验证

这是我们推荐的预发布网站方法,因为它意味着搜索引擎无法抓取或索引 URL。

如果服务器需要用户名和密码才能访问,那么您需要向 SEO Spider 提供它才能抓取该站点。有两种主要的身份验证类型,它们的设置略有不同。

最常见的是基本和摘要身份验证服务器身份验证,当您访问网站时,您可以在浏览器中看到它,并且它会弹出一个窗口,要求您输入用户名和密码。

如果登录屏幕包含在页面本身中,这将是Web 表单身份验证。以下是关于这两种类型的更多信息。

基本和摘要身份验证

当您抓取网站时,会自动检测到基本和摘要身份验证。

通常,开发中的站点也会通过 robots.txt 阻止,因此请确保您已遵循我们关于 robots.txt 上述 的指导,以便可以抓取它。

抓取预发布网站,将出现一个身份验证弹出框,就像在 Web 浏览器中一样 - 要求输入用户名和密码。

authentication

输入您的凭据,抓取将照常继续。您无法预先输入登录凭据 - 它们是在抓取需要身份验证的 URL 时输入的。此功能不需要许可证。

尝试以下页面,了解身份验证在您的浏览器或 SEO Spider 中的工作方式。

Web 表单身份验证

还有其他 Web 表单和区域需要您使用 cookie 登录才能进行身份验证,以便能够查看或抓取它。SEO Spider 允许用户在 SEO Spider 的内置 Chrome 浏览器中登录到这些 Web 表单,然后抓取它。此功能需要许可证。

要使用 Web 表单身份验证登录,请单击“配置 > 身份验证 > 基于表单”。然后单击“添加”按钮,输入您要抓取的站点的 URL,然后会弹出一个浏览器,允许您登录。

Web Forms Authentication

使用浏览器窗口正常登录,然后单击“确定”,然后再次单击“确定”。这已向 SEO Spider 提供了必要的 cookie,您可以像往常一样开始抓取。

此功能非常强大,因为它提供了一种在 SEO Spider 中设置 cookie 的方法,因此它也可以用于诸如 绕过地理 IP 重定向 之类的场景,或者如果站点使用带有 reCAPTCHA 或类似内容的机器人保护。

请阅读我们关于 抓取 Web 表单密码保护站点 的教程。

IP 地址

某些预发布平台可以通过 IP 地址限制访问。

由于 SEO Spider 从运行它的机器本地抓取,因此您需要提供此 IP 地址以包含在站点使用的服务器或平台的“允许列表”中,历史上有时称为“白名单”。

如果这是您自己的机器,您可以通过 Google 搜索“我的 IP 地址“来找到您的 IP,它将显示在 SERP 的顶部。

IP Address

不太常见的方法

虽然大多数预发布网站都受到 robots.txt 或身份验证的限制,但我们有时也会看到下面介绍的各种其他设置。

Cookies

我们已经看到网站的某些测试区域仅在提供特定 cookie 时才显示更新的页面。这通常不是在预发布服务器上,而是在以有限形式测试更改的完整生产网站上。

可以通过使用 自定义 HTTP 标头 在 SEO Spider 的请求中提供所需的 cookie 来访问这些备用页面。

Custom Cookie via Custom HTTP Headers

单击“添加”,输入“Cookie”作为标头名称,并在“标头值”字段中提供 cookie。

如果需要名称和值对,您可以在上面的字段中以等号分隔(“name=value”)组合输入它们。

然后,您可以抓取网站,并且 SEO Spider 发出的每个请求都将提供相关的 cookie。

Hosts 文件

一些新网站最初只能通过修改 hosts 文件来查看。

如果您修改自己的 hosts 文件以查看网站,那么如果您从同一台机器本地抓取,SEO Spider 也将能够看到新站点。


如何配置设置以抓取预发布站点

开发中的站点对 HTTP 请求的响应可能与实际环境中的站点不同,并且通常具有需要在 SEO Spider 中进行额外配置的 robots 指令。

速度

预发布中的网站通常比生产环境中的网站慢且更脆弱。它们通常无法承受与生产服务器相同的负载,并且该站点毕竟仍在开发中。

SEO Spider 使用的默认 5 个线程通常不会导致不稳定。但是,我们建议在抓取之前与开发人员沟通,确认所需的抓取速率(如果需要),然后在抓取的早期阶段监控抓取响应和速度。

如果您开始看到连接超时、服务器错误或抓取速度非常慢,您可能需要降低抓取速度。可以通过“配置 > 速度”调整速度。

Crawl Speed

如果您继续看到问题,请进一步降低抓取速度。您可以通过批量右键单击“重新抓取”来重新抓取没有响应或服务器错误的 URL。

此外,如果您以 JavaScript 渲染模式进行抓取,您可以考虑增加 响应超时 配置和 AJAX 超时

Nofollow

通常,开发网站会有一个站点范围的“nofollow”meta robots 标签,或 HTTP 标头中的 X-Robots-Tag。这通常与“noindex”一起复制,而没有经过太多考虑,作为“noindex, nofollow”。

“nofollow”与 noindex 是一个非常不同的指令,它指示爬虫不要跟踪页面上的任何出站链接。

您可以在“指令”选项卡和“nofollow”过滤器下查看页面是否具有“nofollow”。

nofollow

默认情况下,SEO Spider 将遵守这些指令,因此如果它们位于网站的所有页面上,则只会抓取一个页面。

如果是这样,请转到“配置 > 爬取”,然后启用“跟踪内部 Nofollow”以抓取这些页面上的出站链接。

Follow Internal Nofollow

如果您还想发现外部链接,请也选中下面的选项。

Noindex

有时,预发布中的站点使用 noindex,而不是阻止网站的抓取或组合使用。noindex 不会阻止抓取,但它会指示搜索引擎不要索引这些页面。

可以在“指令”选项卡和“noindex”过滤器下查看 noindex 的使用情况。

noindex when crawling staging

虽然 SEO Spider 会抓取带有 noindex 的页面,但它会将这些页面视为“不可索引”。这意味着在过滤器中发现的问题(例如重复或缺少页面标题、元描述等)不会考虑这些页面。

因此,我们建议在存在站点范围的“noindex”时禁用“忽略不可索引 URL 的问题”。这可以在“配置 > 爬取 > 高级”中找到。

Ignore Non-Indexable URLs for Issues

这将意味着带有“noindex”的 URL 将被考虑用于任何页面上的问题。

None

这是一个很容易让您措手不及的指令,但指令“none”并不意味着不存在任何指令。“none”指令实际上等同于“noindex, nofollow”。

在这种情况下,请按照上述 nofollownoindex 的指导进行操作。


如何比较预发布与正式发布

SEO Spider 允许您比较两次抓取以查看差异。它具有独特的“URL 映射”功能,可以比较两种不同的 URL 结构,例如预发布网站与生产或实际环境。您可以比较完全不同的主机名、目录或 URL 的更细微的更改。

要比较预发布与正式发布的网站,请单击“模式 > 比较”,然后选择两次抓取。

Switch to Compare Mode

然后单击比较配置(“配置 > 比较”)和“URL 映射”。

输入一个正则表达式,将之前的抓取 URL 映射到当前的抓取。通常,它就像映射主机名一样简单。

Compare Staging Vs Production Site

然后将预发布和现有正式发布站点的 URL 相互映射,因此将针对概览选项卡数据、问题和机会、站点结构选项卡和更改检测比较等效的 URL。

在我们的教程 如何比较抓取 中了解更多信息。


总结

希望本教程能帮助您抓取任何预发布服务器,并抓取和审核开发站点。

如果在遵循上述指导后抓取网站时遇到任何问题,请查看以下常见问题解答 -

或者,请通过 支持 与我们联系,我们可以提供帮助。