让我们面对现实吧——蜘蛛是令人生畏的。然而,当你在做SEO时,理解蜘蛛是如何抓取、索引和呈现页面的,这对于确保站点的蓬勃发展至关重要。上周,微软高级项目经理Frederic Dubut在SMX East为我们讲解了每个概念,并解释了如何优化站点以提高爬行效率。
爬虫是什么?
爬虫(也称为蜘蛛或机器人)在因特网上获取HTML进行索引。为了更好地可视化,想象一下大量的计算机发送一个程序来下载内容。
好吧,那又怎样?
事情是这样的。Dubut强调,建立一个访问网站和获取信息的程序很简单,建立礼貌的程序就不那么简单了。一个爬虫可以(如果他们访问服务器太频繁)降低一个网站的性能(例如,变慢)。
最终,搜索引擎希望爬虫成为“互联网的好公民”。
匍匐经理去营救!
什么是爬行管理?
和大多数优秀的主管一样,爬行经理的工作是听取信号并制定预算。它的工作是评估和确定“在不损害网站性能的情况下,它能爬行多少站点?”(也被非正式地称为“爬行预算”)。当爬行管理者感到爬行太多时,它就会停止爬行。当它还没有确定收益递减点时,它就会继续爬行。
爬行管理器使用什么“信号”?
爬行经理审查多个级别。它使用信号(例如,连接错误,下载时间,内容大小,状态,等等)来测试水,确保没有异常。每个瓶颈层都有自己独立的爬行预算。要匍匐前进,所有这些水平必须在他们的爬行预算之内有空间。
水平包括:
子域名
域
服务器
IP地址
什么是爬行预算?
爬行预算是爬行器认为它可以爬行而不损害站点性能的预算。它是通过对列出的指标进行评估的迭代过程确定的。
你什么时候该担心预算?
Dubut提到有两个因素使得网站更具有挑战性:规模和优化水平(想想:内部链接基础设施,低重复内容,强信号,等等)。最难抓取的网站是那些大型的,搜索引擎优化效果不好的网站,这意味着预算低于需求(需要抓取)。
SEOs可以做什么来支持爬虫?
如果你想修改Bing的爬虫的时间和速度,使用Bing网站管理员工具抓取控制报告(参考配置我的网站一节)。作者边注:谷歌关于改变Googlebot抓取率的文档。
释放服务器资源:
通过服务器端安全工作拒绝恶意参与者。
寻找减少爬行需求的方法:
删除重复的内容或利用规范标记
巩固重定向
使用XML网站地图(包括“lastmod”)
删除不必要的URL参数
删除任何垃圾url或未使用的资源
考虑对重而慢的页面进行性能优化
如果利用单独的移动配置,考虑响应式web设计
由于每个瓶颈都有自己的爬行预算——监控每个属性、域和IP(或IP范围)的预算。
在主要的URL转换期间,允许大约两周的时间重新抓取所有内容(因为URL转换将会暂时增加抓取需求)。
Bing的爬虫功能是怎样的(在一个非常抽象的层次上)?
在杜布特演讲的第二部分,他重申了以下几点的重要性:
将301重定向用于永久移动(302重定向仅用于临时重定向)。
当网站使用301重定向时,系统将其视为永久重定向,并将评分信号转移到更新后的URL。
Dubut的一条后续推特很好地诠释了Bing的302流程,“我们对301和302的理解非常符合标准。302个目标接收不到来自源的信号,因为它们应该是暂时的,我们不想稀释信号。如果爬虫一次又一次地看到它是同一个目标,那么不管怎样它可能会把它当作301。”
解决重复内容。
如果两个页面是相同的,都将被爬行和索引。一个会被选中。
不阻止搜索引擎从资源需要了解一个网页。
如果旧页面在机器人中被阻塞。txt,被阻止的URL将保留在索引中。这将淡化信号和URL的潜在影响。
必应(Bing)和JavaScript
Bing团队在2011年开始致力于JavaScript的开发,他们的想法是只有有限的一部分(约5%)的网页需要渲染。随着web转向使用更多javascript,渲染更高百分比页面的需求也随之增加。
Bing如何处理JavaScript?渲染过程是什么?
Bing使用了一个无头浏览器和一个爬行队列,后者稍后会呈现内容。爬虫队列的优先级与其他队列相同。
你应该如何处理JavaScript呈现问题?
不要阻塞了解用户体验所需的资源