跳到主要内容

如何抓取预发布网站

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”。

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


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

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

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

Switch to Compare Mode

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

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

Compare Staging Vs Production Site

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

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


总结​

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

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

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