网站内容抓取(百度资源平台直播一节公开课,抓取友好性优化(组图))
优采云 发布时间: 2021-10-28 19:07网站内容抓取(百度资源平台直播一节公开课,抓取友好性优化(组图))
大家好,今天百度资源平台正式直播了一堂公开课,主要跟大家聊一聊网站抓取和收录的原理,这里我给大家做个详细的笔记(一个字不要*敏*感*词*),看完可以说,做收录基本上问题不大。
百度爬虫的工作原理
首先,百度的爬虫会与网站的首页进行交互。拿到网站的主页后,会理解页面,理解收录(类型,值计算),其次,网站把主页上的所有超链接都提取出来。如下图所示,首页上的超链接称为“post-links”。下一轮爬虫的时候,爬虫会继续和这些超链接的页面进行交互,得到页面进行细化,一层一层的继续下去。抓取一层,构成一个抓取循环。
抓取友好度优化
1、网址规范:
任何资源都是通过 URL 获取的。URL是相对于网站的门牌号,所以URL规划很重要。尤其是在如上图所示的“要爬取的网址”的环境下,爬虫在首页的时候,并不知道这个网址长什么样子。
优秀网址的特点是主流、简单,你可能不想做出一些让人看起来直观的非主流风格。
优秀 URL 示例:
如上图,第一个是百度知道的链接。整个链接分为三个部分。第一部分是网站的站点,第二部分是资源类型,第三部分是资源ID。这种网址很简单,爬虫看起来很不错。
如上图,第三篇文章比百度多了一段。首先,第一段是网站的站点,第二段是站点的一级目录,第三段是站点的二级目录,最后一段是内容ID的网站。像这样的 URL 也符合标准。
不友好 URL 的示例:
如上图所示,这种链接乍一看很长很复杂。有经验的站长可以看到,这种网址中含有字符,而且这个网址中含有文章的标题,导致网址很长。相对较长的 URL 并不优于简单的 URL。百度站长平台规则明确规定网址不能超过256字节。我个人建议 URL 长度控制在 100 字节和 100 个字符以内。足以显示资源的 URL。
如上图所示,该网址收录统计参数,可能导致重复爬取,浪费站点权限。因此,可能不使用参数。如果必须使用参数,也可以保留必要的参数。参数字符可以使用常规字符。连接器,例如“?” 和“&”,避免非主流连接器。
2、 合理的链接发现:
爬虫从首页一层一层的爬取,所以需要搞好首页和资源页的URL关系。这种爬虫爬行比较省力。
如上图所示,从首页到具体内容的超链接路径关系称为发现链接。目前大部分移动站不太重视发现链接关系,因此爬虫无法抓取到内容页面。
如上图所示,这两个站点是常见的移动网站构建方式。从链接发现的角度来看,这两类网站并不友好。
Feed流推荐:大多数进行Feed流的站点在后端都有大量数据。用户不断刷新时会出现新的内容,但无论刷新多少次,可能只能刷新到1%左右的内容。爬虫相当于一个用户。爬虫不可能用这种方式爬取网站的所有内容,所以会导致部分页面被爬取。就算你有100万的内容,也可能只能抢到1-200万。
唯一搜索入口:如上图所示,首页只有一个搜索框。用户需要输入关键词才能找到对应的内容,但爬虫不能输入关键词再爬,所以爬虫只能爬到首页,没有回链。自然爬行和 收录 不会是理想的。
解决方法:索引页下的内容按发布时间倒序排列。这样做的好处是搜索引擎甚至可以通过索引页面抓取您的网站 最新资源。另外,新发布的资源应该是实时的。索引页已同步。很多纯静态网页更新了内容,但是首页(索引页)出不来。这会导致搜索引擎甚至无法通过索引页面抓取最新的资源。第三点是反向链接(最新的文章)URL需要在源码中直接暴露出来,方便搜索引擎抓取。最后,索引页不要越多越好。几个高质量的索引页就够了,比如长城号,基本上只用首页作为索引页。
最后,这里给大家一个更高效的解决方案,就是直接通过百度站长资源平台主动提交资源,让搜索引擎绕过索引页,直接抓取最新的资源。这里有两点需要注意。
Q:提交更多资源更好吗?
A:收录 效果的核心永远是内容的质量。如果大量低质量、泛滥的资源被提交,将导致惩罚性打击。
Q:为什么我提交了普通的收录却没有被抓到?
A:资源提交只能加速资源发现,不能保证短期抓取。当然,百度表示不断优化算法,让优质内容更快被抓取。
3、访问友好:
抓取器必须与网站进行交互并保证网站的稳定性,这样抓取器才能正常抓取。那么访问友好性主要包括以下几个方面。
访问速度优化:建议加载时间控制在2S以内,这样无论是用户还是爬虫,打开速度更快的网站都会更受青睐,其次是避免不必要的跳转,虽然这样情况很少见。部分,但是网站里面还是有很多层次的跳转,所以对于爬虫来说,很可能会在多层次跳转的同时断开。一般是把没有www的域名重定向到带WWW的域名,然后再把带WWW的域名重定向到https,最后更换新站点。在这种情况下,存在第三或第四级重定向。如果有类似网站的修改,建议直接跳转到新域名。
标准化http返回码:正确使用我们常见的301/302和正确使用404主要是常规问题。使用常规方法来解决它们。例如,如果遇到无效资源,则使用 404 代替某些 返回特殊状态代码。
访问稳定性优化:一是尽量选择国内大型DNS服务,保证站点的稳定性。对于域名DNS,阿里云其实是比较稳定可靠的。然后,其次,使用技术手段小心地阻止爬虫爬行。如果有不希望在百度上显示的特定资源,可以使用机器人进行屏蔽。比如网站的后台链接,大多被机器人屏蔽。如果爬取频率过高,造成服务器压力过大,影响用户正常访问,可以通过资源平台的工具降低爬取频率。二是为了防止防火墙误禁止爬虫,所以建议您可以将搜索引擎的UA加入白名单。最后一点是服务器的稳定性,尤其是在短时间内提交大量优质资源的时候。这时候一定要注意服务器的稳定性,因为当你提交大量资源时,爬虫也会相应增加。这个时候会不会导致你的服务器?打开压力太大,这个问题需要站长注意。
如上图所示,这三个例子都是被第三方防火墙拦截的状态。当一个普通用户在这种状态下打开,搜索引擎抓取的时候也会处于这种状态,所以如果遇到CC或者DDOS,我们打开防火墙的前提,一定要放开搜索引擎的UA .
4、 识别百度爬虫
对于一些网站来说,可能会有针对用户的特殊优化,也可能有网站想要区分用户和爬虫进行优化,所以这时候就需要识别百度爬虫了。
首先,简单来说,我们可以通过百度的UA来识别百度爬虫。所以目前百度PC、手机、小程序是三个不同的UA。然后通过简单的识别方法,有第三方的。爬虫模拟百度爬虫,所以你认不出来。那么这时候我们就可以通过双向DNS解析认证来区分了。详情请参考《简单两步:教你快速识别百度蜘蛛》。
提问时间
问:新网站是否有爬网限制?
A:对于任何新网站,都没有抓取限制,但从去年开始,我们开始支持新网站,让你的网站,先收录上百度。然后进行价值判断。那么如何让百度知道你是一个新站点,有两个快捷方式。一是提交到百度资源平台,二是去工信部备案。我们可以从工业和信息化部获得。ICP备案数据后,我们知道有人建了一个新站点,这样我们就可以给新站点一个基本的流量支持。
Q:各个站点的蜘蛛爬取配额会有所调整。多久会调整一次?
答:确实会有调整。对于新资源,它与你的抓取频率有关,对于旧资源,它与你的内容质量有关。如果新资源的质量发生变化,那么爬取的频率也会发生变化,网站如果>的规模发生变化,那么爬取的频率也会发生变化。如果有大的改版,那么爬取的频率也会相对变化。
Q:网站掉电可以恢复吗?
A:网站彻底修复的前提是我们会重新评估网站,看看网站是否已经整改,如果有整改,是不是404并提交到资源如果说平台完全符合要求,搜索引擎会进行评估,恢复没有违规的网站。
问:新站点是否有评估期?
A:对我们来说,没有评估期这样的东西。正如我们之前提到的,支持新站点的流量是可能的。假设一个新站点的流量支持是1-2个月后,发现网站继续保持这个状态,那么不会有大的调整。当我们发现网站的质量有明显提升时,我们会相应提高百度排名。
Q:百度对待国外服务器和国内服务器有区别吗?
A:从战略上来说,没有硬性区分。但是很多国外服务器在国内部分地区已经禁止,从国外服务器网站备案来看,国产服务器有优势。
Q:新展的老域名更有优势吗?
A:如果旧域名和新站的内容一样,在初期确实有一定的优势,但只是初期,后期要考虑内容的质量。应特别关注旧域名的行业和行业。您新的 网站 的内容无关紧要。即使是所谓的高能老域名也会适得其反。百度会认为,今天这个明天那个,效果还不如做一个新域名。
Q:蜘蛛有重量吗,比如220和116这样的高重量蜘蛛?
答:蜘蛛没有重量。网站的排名主要由网站的质量决定。