1. 您的位置:首页 > seo技术 >内容

僵尸和蜘蛛争夺的终极指南-第二部分

在由三部分组成的系列文章的第一部分中,我们了解了机器人是什么以及爬网预算为何很重要。 让我们看一下如何让搜索引擎知道重要的信息和一些常见的编码问题。

如何让搜索引擎知道重要的事

当漫游器抓取您的网站时,会有很多提示将其引导到您的文件中。

像人类一样,漫游器也会通过链接来了解您网站上的信息。 但是他们也在浏览您的代码和目录,以查找特定的文件,标签和元素。 让我们看一下其中的一些元素。

Robots.txt

机器人会在您的网站上寻找的第一件事是您的robots.txt文件。

对于复杂的网站,robots.txt文件必不可少。 对于只有几个页面的小型网站,可能不需要robots.txt文件-如果没有它,搜索引擎机器人将只抓取您网站上的所有内容。

使用robots.txt文件可以引导机器人的主要方法有两种。

1.首先,您可以使用“ disallow”指令。 这将指示漫游器忽略特定的统一资源定位符(URL),文件,文件扩展名,甚至是网站的整个部分:

用户代理:Googlebot
禁止:/ example /

尽管disallow指令将阻止漫游器抓取您网站的特定部分(从而节省抓取预算),但不一定会阻止页面被编入索引并显示在搜索结果中,例如:

晦涩难懂的“此页面无可用信息”消息不是您希望在搜索列表中看到的内容。

上面的示例是由于census.gov/robots.txt中的以下不允许指令引起的:

用户代理:Googlebot 抓取延迟:3
禁止:/ cgi-bin /

2.另一种方法是使用noindex指令。 不为某个页面或文件建立索引不会阻止它被爬网,但是,它将阻止它被索引(或将其从索引中删除)。 Google非正式地支持此robots.txt指令,而Bing完全不支持该robots.txt指令(因此请确保具有User-agent:*禁止Bingbot和除Googlebot以外的其他机器人使用):

用户代理:Googlebot
Noindex:/ example /
用户代理: *
禁止:/ example /

显然,由于这些页面仍在被爬网,因此它们仍将用尽您的爬网预算。

这是一个经常被遗忘的陷阱:disallow指令实际上将撤消meta robots noindex标记的工作。 这是因为disallow禁止漫游器访问页面的内容,从而阻止他们查看和遵守meta标签。

将robots.txt文件用于放牧机器人的另一个警告是,并不是所有的机器人都行为规范,有些甚至会忽略您的指令(尤其是寻找漏洞的恶意机器人)。 有关此内容的更详细概述,请查看Robots.txt的更深入了解。

XML网站地图

XML网站地图可帮助漫游器了解您网站的基础结构。 请务必注意,漫游器将您的站点地图用作有关如何为您的网站建立索引的线索,而不是权威的指南。 漫游器还会考虑其他因素(例如您的内部链接结构)来确定您的网站是什么。

可扩展标记语言(XML)站点地图最重要的是确保要发送给搜索引擎的消息与robots.txt文件一致。

不要将漫游器发送到您已阻止它们的页面; 考虑您的抓取预算,尤其是当您决定使用自动生成的站点地图时。 您不想意外地给爬虫提供数千页的稀疏内容以进行分类。 如果这样做,它们可能永远无法到达您最重要的页面。

第二个最重要的事情是确保您的XML网站地图仅包含规范的URL,因为Google会将您的XML网站地图视为规范化信号。

规范化

如果您的网站上有重复的内容(您不应该这样做),则rel =“ canonical”链接元素会告诉漫游器哪个URL应该被视为主版本。

主页是您需要注意的一个关键地方。 许多人没有意识到他们的网站可能在不同的URL上存储同一页面的多个副本。 如果搜索引擎试图为这些页面建立索引,则存在使它们跳动重复内容过滤器的风险,或者至少会稀释您的链接资产。 请注意,添加规范链接元素不会阻止漫游器爬网重复页面。 这是一个由Google多次索引的主页的示例:

分页

正确设置rel =” next”和rel =” prev”链接元素非常棘手,许多人都在努力使其正确。 如果您经营的电子商务网站的每个类别都有很多产品,则要避免陷入Google重复的内容过滤器中,rel = next和rel = prev是必不可少的。

想象一下,您有一个销售滑雪板的站点。 假设您有50种不同的型号。 在主类别页面上,用户可以查看前10个产品,以及每个产品的名称和缩略图。 然后,他们可以单击第二页以查看接下来的10个结果,依此类推。

这些页面中的每个页面都具有相同或非常相似的标题,元描述和页面内容,因此主类别页面的头部应具有rel =“ next”(因为它是第一页,所以没有rel =“ prev”)。超文本标记语言(HTML)。 将rel =” next”和rel =” prev”链接元素添加到每个后续页面中会告诉搜寻器您要使用这些页面作为序列。

或者,如果您有一个“查看全部”页面,则可以在所有分页页面上将其标准化为“查看全部”页面,而完全跳过rel = prev / next。 不利的一面是,“查看全部”页面可能会显示在搜索结果中。 如果该页面加载时间太长,那么您与搜索访问者的跳出率将会很高,这不是一件好事。

没有rel =” canonical”,rel =” next”和rel =” prev”链接元素,这些页面将相互竞争排名,并且您将面临重复内容过滤器的风险。 如果实施正确,则rel = prev / next会指示Google将序列视为一页,或者rel = canonical会将所有值分配给“查看全部”页面。

常见编码问题

如果您想要自然排名,那么好的,简洁的代码至关重要。 不幸的是,小错误可能会使抓取工具感到困惑,并导致搜索结果严重受损。

这里有一些基本的注意事项:

1.无限空间(又称蜘蛛陷阱) 。 不良的编码有时会无意间导致“无限空间”或“蜘蛛陷阱”。 诸如指向相同内容的无尽URL或以多种方式(例如,数十种方式对产品列表进行排序)显示具有相同信息的页面或包含无限不同日期的日历之类的问题可能会导致蜘蛛陷入可能会很快耗尽您的抓取预算的循环中。

错误地在404错误页面的超文本传输​​协议安全(HTTP)标头中提供200状态代码是向漫游器呈现无边界网站的另一种方法。 依靠Googlebot正确确定所有“软404”是玩抓取预算的危险游戏。

当机器人碰到大量的稀疏或重复内容时,它最终将放弃,这可能意味着它永远无法达到您的最佳内容,并且您最终会在索引中看到一堆无用的页面。

找到蜘蛛陷阱有时可能很困难,但是使用上述日志分析器或第三方抓取工具(如Deep Crawl)是一个不错的起点。

您正在寻找的是不应进行的漫游器访问,不应该存在的URL或没有任何意义的子字符串。 另一个线索可能是具有无限重复元素的URL,例如:

example.com/shop/shop/shop/shop/shop/shop/shop/shop/shop/shop / ...

2.嵌入式内容。 如果您希望您的网站有效地进行爬网,那么最好保持简单。 Bot通常在JavaScript,框架,Flash和异步JavaScript和XML(AJAX)方面遇到麻烦。 即使Google在抓取Javascript和AJAX之类的格式方面做得更好,但在可能的情况下,坚持使用老式HTML是最安全的。

一个常见的例子是使用无限滚动的站点。 尽管它可能会提高您的可用性,但可能会使搜索引擎难以正确地对内容进行爬网和编制索引。 即使您的文章或产品页面以滚动格式显示,也请确保每个文章或产品页面均具有唯一的URL,并通过传统的链接结构进行连接。

在本系列的下一篇也是最后一篇文章中,我们将研究机器人如何看待您的移动页面,讨论是否应该阻止不良机器人,并深入研究本地化和hreflang标签。 敬请关注!


本文中表达的观点是来宾作者的观点,不一定是Search Engine Land。 工作人员作者在此处列出。

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。如若转载,请注明出处:http://www.botadmin.cn/sylc/10019.html