发布日期:2019-11-22
顺畅稳定的抓取是网站获得搜索用户、搜索流量的重要前提,影响抓取的关键因素有以下几点:
√ 网站更新频率:经常更新高价值的站点,优先抓取;
√ 受欢迎程度:用户体验好的站点,优先抓取;
√ 优质入口:优质站点内链接,优先抓取;
√ 历史的抓取效果越好,越优先抓取;
√ 服务器稳定,优先抓取;
√ 安全记录优质的网站,优先抓取。
网站的URL如何设置,可参考2.3.1中的URL
URL中的参数设置需遵循两个要点:
√ 参数不能太复杂;
√ 不要用无效参数,无效参数会导致页面识别问题,页面内容最终无法在搜索展示;
另外,很多站长利用参数(对搜索引擎和页面内容而言无效参数)统计站点访问行为,这里强调下,尽量不要出现这种形式资源,例如:
https://www.test.com/deal/w00tb7cyv.html?s=a67b0e875ae58a14e3fcc460422032d3
或者:
http://nmtp.test.com/;NTESnmtpSI=029FF574C4739E1D0A45C9C90D656226.hzayq-nmt07.server.163.org-8010#/app/others/details?editId=&articleId=578543&articleType=0&from=sight
很多站长会咨询如何判断百度移动蜘蛛,这里推荐一种方法,
普通收录工具是网站主动向百度搜索推送数据的工具,网站使用普通收录可缩短爬虫发现网站链接时间,目前普通收录工具支持三种方式提交
√API推送:是最为快速的提交方式,建议将站点当天新产出链接立即通过此方式推送给百度,以保证新链接可以及时被百度抓取;
√ Sitemap:网站可定期将网站链接放到Sitemap文件中,然后将Sitemap提交给百度。百度会周期性的抓取检查提交的Sitemap对其中的链接进行处理,但抓取速度慢于主动推送;
√ 手动提交:如果不想通过程序提交,那么可以采用此种方式,手动将链接提交给百度;
简单来说:建议有新闻属性站点使用API推送进行数据提交;新验证平台站点或内容无时效性要求站点,可以使用Sitemap将网站全部内容使用Sitemap提交;技术能力弱或网站内容较少的站点可使用手动提交方式进行数据提交;
关于移动页面的访问速度,百度搜索资源平台
对于页面访问速度的提速,这里也给到几点建议:
资源加载:
√ 将同类型资源在服务器端压缩合并,减少网络请求次数和资源体积;
√ 引用通用资源,充分利用浏览器缓存;
√ 使用CDN加速,将用户的请求定向到最合适的缓存服务器上;
√ 非首屏图片类加载,将网络带宽留给首屏请求。
页面渲染:
√ 将CSS样式写在头部样式表中,减少由CSS文件网络请求造成的渲染阻塞;
√ 将JavaScript放到文档末尾,或使用异步方式加载,避免JS执行阻塞渲染;
√ 对非文字元素(如图片,视频)指定宽高,避免浏览器重排重绘;
希望广大站长持续关注页面加载速度体验,视网站自身情况,参照建议自行优化页面,或使用通用的加速解决方案(如MIP),不断优化页面首屏加载时间。
HTTP状态码是用以表示网页服务器HTTP响应状态的3位数字代码。各位站长在平时维护网站过程中可能会在搜索资源平台工具后台抓取异常或者服务器日志里看到各种各样的响应状态码,有些甚至会影响网站的SEO效果。
下面为大家整理了一些常见的HTTP状态码:
301:(永久移动)请求的网页已被永久移动到新位置。服务器返回此响应(作为对GET或HEAD请求的响应)时会自动将请求者转到新位置。
302:(临时移动)服务器目前正从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。此代码与响应GET和HEAD请求的301代码类似,会自动将请求者转到不同的位置。
这里强调301与302的区别:
301/302的关键区别在于:这个资源是否存在/有效;
301指资源还在,只是换了一个位置,返回的是新位置的内容;
302指资源暂时失效,返回的是一个临时的代替页(例如镜像资源、首页、404页面)上。注意如果永久失效应当使用404。
有时站长认为百度对302不友好,可能是误用了302处理仍然有效的资源;
403:(已禁止)服务器已经理解请求,但是拒绝执行它;
404:(未找到)服务器找不到请求的网页;
这里不得不提的一点,很多站长想自定义404页面,需要做到确保蜘蛛访问时返回状态码为404,若因为404页面跳转时设置不当,返回了200状态码则容易被搜索引擎认为网站上出现了大量重复页面,从而对网站评价造成影响;
500:(服务器内部错误)服务器遇到错误,无法完成请求;
502:(错误网关)服务器作为网关或代理,从上游服务器收到了无效的响应;
503:(服务不可用)目前无法使用服务器(由于超载或进行停机维护)。通常这只是一种暂时的状态;
504:(网关超时)服务器作为网关或代理,未及时从上游服务器接收请求。
robots工具的详细工具使用说明,细节参考第四部分关于robots的使用,本章节
仅强调以下两点:
√ 百度蜘蛛目前在robots里是不支持中文的,故网站robots文件编写不建议使用中文字符;
√ robots文件支持UrlEncode编码这种写法,如:http://www.test.cn/%E7%89%B9%E6%AE%8A:%E6%B5%8F%E8%A7%88/%E7%94%9F%E6%AD%BB%E7%8B%99%E5%87%BB:%E7%99%BD%E9%93%B6%E5%8A%A0%E7%89%B9%E6%9E%97
当网站死链数据累积过多并且被展示到搜索结果页中,对网站本身的访问体验和用户转化会起到负面影响。另一方面百度检查死链的流程也会为网站带来额外负担,影响网站其他正常页面的抓取和索引。
百度搜索资源平台推出死链提交工具,帮助网站提交死链数据,死链提交工具参考第四部分关于死链接提交工具的使用。
访问稳定性主要有以下几个注意点:
(1)DNS解析
DNS是域名解析服务器,关于DNS这里建议中文网站尽可能使用国内大型服务商提供的DNS服务以保证站点的稳定解析。分享一个DNS稳定性的示例:
搜索资源平台曾收到多个站长反馈,称网站从百度网页搜索消失,site发现网站数据为0。
经追查发现这些网站都使用国外某品牌的DNS服务器 *.DOMAINCONTROL.COM,此系列DNS服务器存在稳定性问题,百度蜘蛛经常解析不到IP,在百度蜘蛛看来,网站是死站点。此前也发现过多起小DNS服务商屏蔽百度蜘蛛解析请求或者国外DNS服务器不稳定的案例。因此这里建议网站,谨慎选择DNS服务。
(2)蜘蛛封禁
针对爬虫的封禁会导致爬虫认为网站不可正常访问进而采取对应的措施。爬虫封禁其实分两种,一种就是传统的robots封禁,另一种是需要技术人员配合的IP封禁和UA封禁;而绝大多数情况下的封禁都是一些操作不当导致的误封禁,然后在搜索引擎上的反应就是爬虫不能正常访问。所以针对爬虫封禁的操作一定要慎重,即使因为访问压力问题要临时封禁,也要尽快做恢复处理。
(3)服务器负载
抛开服务器硬件问题(不可避免),绝大多数引起服务器负载过高的情况是软件程序引起的,如程序有内存泄露,程序出core,不合理混布服务(其中一个服务消耗服务器资源过大引起服务器负载增大,影响了服务器对爬虫访问请求的响应)。对于提供服务的机器一定要注意服务器的负载,留足够的buffer保证服务器具有一定的抗压能力。
(4)其他人为因素
人为操作不当引起访问异常的情况是经常见到的,针对这种情况需要严格的制度约束,不同站点情况不一样。需要保证每一次的升级或者操作要准确无误。
一般来说网站的内容页面是可穷尽的,万级别百万级别甚至亿级别,但一定是可穷尽的。而现实中确实存在这样一些网站,爬虫针对这些网站进行抓取提链时会陷入"链接黑洞";通俗的讲就是网站给爬虫呈现的链接不可穷尽;典型的是部分网站的搜索结果页,不同的query在不同anchor下的a标签链接不一样就导致了"链接黑洞"的产生,所以严禁URL的生成跟用户的访问行为或者搜索词等因素绑定。
页面解析主要指网站页面被蜘蛛抓取会对页面进行分析识别,称之为页面解析。页面解析对网站至关重要,网站内容被抓取是网站被发现的第一步,而页面解析则是网站内容被识别出来的重要一环,页面解析效果直接影响搜索引擎对网站的评价。
关于网页标题,百度搜索于2019年9月推出清风算法,重点打击网站标题作弊,引导用户点击,损害用户体验的行为;清风算法重点打击的标题作弊情况有以下两种:
√ 文不对题,网站标题与正文有明显不符合,误导搜索用户点击对搜索用户造成伤害;
√ 大量堆砌,网站标题中出现大量堆砌关键词的情况也十分不提倡;
关于网站标题作弊的详细解读,
关于网站TDK,有以下几种情况需要注意:("T"代表页头中的title元素,"D"代表页头中的description元素,"K"代表页头中的keywords元素,简单指网站的标题、描述和摘要)有以下几种情况需要注意:
√ 百度未承诺严格按照title和description的内容展示标题和摘要,尤其是摘要会根据用户检索的关键词自动匹配展示合适的摘要内容,让用户了解网页的主要内容,影响用户的行为决策;
√ 站长会发现同一条链接的摘要在不同关键词下是变化的,可能不会完全符合站长预期,尤其是站长在检索框进行site语法操作时,可能会感觉摘要都比较差。但请不要担心毕竟绝大多数普通网民不会这样操作。在此情况下出现不符合预期的摘要并不代表站点被惩罚;
√ 还有一种情况是网页中的HTML代码有误,导致百度无法解析出摘要,所以有时大家会看到某些结果的摘要是乱码(当然这种情况很少见),所以也请站长注意代码规范。
主体内容注意两个点,一个主体内容过长(通常网页源码长度不能超过128k),文章过长可能会引起抓取截断;另外一个是注意内容不能空短,空短内容也会被判断为无价值内容。
以下分析两个示例:
(1)关于主体内容过长的示例分析:
某网站主体内容都是JS生成,针对用户访问没有做优化;但是网站特针对爬虫抓取做了优化,直接将图片进行base64编码推送给百度,然而优化后发现内容没有被百度展示出来;页面质量很好,还特意针对爬虫做了优化,为什么内容反而无法出现在百度搜索中?
分析主要有以下原因:
√ 网站针对爬虫爬取做的优化是直接将图片base64编码后放到HTML中,导致页面长度过长,网站页面长度达164k;
√ 站点优化后将主体内容放于最后,图片却放于前面;
√ 爬虫抓取内容后页面内容过长被截断,已抓取部分无法识别到主体内容,最终导致页面被认定为空短而不建索引。
这样的情况给到以下建议:
√ 如站点针对爬虫爬取做优化,建议网站源码长度在128k之内,不要过长;
√ 针对爬虫爬取做优化,请将主体内容放于前方,避免抓取截断造成的内容抓取不全。
(2)关于内容空短的示例分析:
某网站反馈网站内容未被建索引,分析发现网站抓取没有问题,但被抓取到的页面都提示需要输入验证码才能查看全部页面,这类页面被判断为空短页面,这类页面在抓取后,会被判定为垃圾内容。
而且当蜘蛛对一个网站抓取后发现大面积都是低值的空短页面时,爬虫会认为这个站点的整体价值比较低,那么在后面的抓取流量分布上会降低,导致针对该站点的页面更新会比较慢,进而抓取甚至建索引库也会比较慢。
为什么会出现网站内容空短这种情况,其中一个原因是网站内容未全部搭建完成,未对外开放但已被蜘蛛爬取发现。针对这种情况,建议网站在邀请测试阶段使用robots封禁。
另外还会有些网站,设置用户查看权限,如需用户登陆才能查看全部内容,这样的行为对搜索引擎也极不友好,蜘蛛无法模拟用户登陆,仅能抓取网站已展示页面,可能会导致抓取页面为空短的现象。
这里再次强调,不要让爬虫给站点画上不优质的标签,对网站将产生不好的影响。另外,移动端的H5页面很多都是采用JS方式加载,其实是更容易产生空短请各位站长注意。
关于网页发布时间,有以下几点建议:
√ 网页内容尽可能加上产出时间,严格说是内容发布时间;且时间尽量全,时间格式为年-月-日 时:分:秒;
例:
√ 网页上切忌乱加时间,这样容易造成页面时间提取问题或搜索引擎判断提取时间不可信,从而降低对网页的展现。
为持续提升搜索用户体验,百度搜索产品技术团队经过用户调研、竞品分析、小流量测试等手段,对落地页体验标准进行了全新升级,正式推出《百度APP移动搜索落地页体验白皮书5.0》,期望继续与各位内容、服务提供者一同打造沉浸式的搜索体验,为亿万用户提供更优质便捷的搜索服务。
原创文章要求是独立完成的创作且没有歪曲、篡改他人创作或者抄袭、剽窃他人创作而产生的作品,对于改编、注释、整理他人已有创作而产生的作品要求有充分的点评、补充等增益信息。
建议原创文章在标题下方明确注明“来源:xxxx(本站站点名)”或“本站原创”之类字样,转载文章明确注明“来源:xxxx(转载来源站点名)”之类字样,不建议使用“admin”、“webmaster”、“佚名”等模糊的说法。
外链是本站点对第三方站点页面的链接指向,是本站点对第三方站点页面内容的一种认可和推荐。
站点进行外链建设时,建议是有真实推荐意图并且指向那些熟悉的、被认可的、内容相关的外部页面;不建议推荐与本站点页面内容无关的外链内容。也不建议乱推荐外链、交换外链互联、指向作弊站的行为(这些很可能被超链策略反向识别成垃圾作弊站点进行打压)。
最后,站长要及时发现和处理站点被黑的页面。页面被黑掉后,一般会被人为放入大量无关的,甚至作弊的外链在该页面上,其目的是要瓜分站点自身权重,并以此来提高外链目标站点影响力。建议站长发现后,及时向搜索资源平台提交死链进行删除和屏蔽,不及时处理一定程度上会影响站点本身的权重。最好从技术上优化,提高站点安全壁垒,防范于未然。
内链描述了站点的结构,一般起到页面内容组织和站内引导的作用;内链的重要意思是通过链接指向,告诉搜索引擎哪个页面最为重要。
内链组织的时候建议结构清晰,不要过于冗杂,另外内链组织的版式建议保持一致,这样对搜索引擎超链分析比较友好。
与外链类似,建议站长善于使用nofollow标签,既对搜索引擎友好又可避免因垃圾link影响到站点本身的权重。
anchor描述:尽可能使用典型的有真实意义的anchor。anchor描述要与超链接的页面内容大致相符,避免高频无意义anchor的使用,另外同一个URL的anchor描述种类不宜过多,anchor分布越稀疏会影响搜索排名。
点击查看《百度移动建站优化白皮书》第四章:百度专属SEO工具