如何绕过爬取中的 Geo IP 重定向
了解如何使用 Web 表单身份验证设置您首选的国家/地区,以便在网站使用自动 GEO IP 重定向时抓取该网站。
如何绕过爬取中的 Geo IP 重定向
在 Charlie Whitworth 在 Twitter 上提问后,我想整理这份快速指南,他询问是否有人知道在尝试使用 Screaming Frog SEO Spider 执行爬取时,如何绕过特定国家/地区的 IP 重定向。
有人知道如何躲避 IP 重定向,以便使用 @screamingfrog 抓取美国网站吗? #seo
— Charlie Whitworth (@WhitworthSEO) 2017 年 9 月 25 日
我们都经历过这种情况,您访问另一个国家/地区的网站,并立即被重定向到您当地的版本,而无需询问。 Google 对其自己的搜索引擎也这样做(尽管他们建议您不要这样做,因为它可能会带来令人讨厌的用户体验),并且许多国际品牌也这样做。 这可能很有帮助,但尤其是在 SEO 分析国际网站时,它可能相当无益。
在您自己的区域之外查看网站通常需要找到指向该国家/地区版本的链接,并将其设置为您的首选项(这会在您的浏览器中设置一个 cookie)。
从历史上看,执行自动国家/地区 IP 重定向网站的爬取需要使用代理并欺骗该国家/地区的 IP,或者偶尔能够在 URL 字符串中设置一个参数来绕过它。 其他时候,网站可能会根据 Accept-Language 值 而不是 IP 重定向到网站的不同版本,您可以在 SEO Spider 中轻松调整该值。
但是,我想分享一种使用相对较新且功能强大的 web forms authentication 功能来爬取基于位置重定向的网站的简单方法,该功能允许您登录任何内容并进行爬取。
爬取具有 Geo IP 重定向的网站
GoDaddy 是一个按位置自动重定向的网站的示例。 它们使用国家/地区级别的子域名,其中美国版本的网站位于 www 上。 假设我想从美国境外爬取美国网站。 这就是发生的事情。

www. 主页立即 302 重定向到 https://pt.godaddy.com/,这是葡萄牙子域名,也是我目前正在度假的地点(撰写像这样的引人入胜的博客文章)。 该网站不允许我爬取 www. 美国版本,它会重定向,就是这样。 作为用户,您可以设置位置,这也是基于表单的身份验证可以提供帮助的地方。
1) 单击“Configuration > Authentication > Forms Based”
然后点击“add”,您尝试爬取的网站的 URL 将自动填充(在本例中为 www.godaddy.com)。

我们内置的浏览器窗口将出现,您会看到 www. 网站的版本已像爬取一样再次重定向到您的位置版本。

我可以看到葡萄牙子域名,但仍然想爬取美国网站。
2) 在内置浏览器中设置要爬取的位置
现在您需要做的就是设置您希望爬取的网站的首选版本。 Godaddy 有一个国家/地区菜单, 这使得它很简单。

我只需单击“United States”链接即可转到 www.godaddy.com 子域名,该子域名会显示正确的位置并在浏览器和 SEO Spider 中设置一个 cookie。

然后单击浏览器窗口中的“OK”。
3) 现在爬取设置的位置
现在再次开始爬取。 设置 cookie 后,您将能够爬取首选位置网站。

这胜过使用代理,代理速度可能很慢,而且设置起来很烦人。 享受。