c爬虫抓取网页数据( SEO优化工作的6个策略之前)
优采云 发布时间: 2021-12-16 16:16c爬虫抓取网页数据(
SEO优化工作的6个策略之前)
搜索引擎爬虫抓取我们的网页是实现 SEO 优化的第一步。如果不爬取,网站就不会搜索到收录,也就没有排名。所以对于每一个SEO从业者来说,爬行是第一步!
事实上,大多数SEO从业者所知道的搜索引擎爬取算法只有深度优先和广度优先的爬取策略。但实际上,爬虫爬取的网页有6种策略。在分享这6个策略之前,你必须先看看搜索引擎爬虫的工作流程,否则你可能看不懂下面的内容。
爬虫的宽度优先爬取策略
广度优先的爬取策略,一种历史悠久,一直受到关注的爬取策略。搜索引擎爬虫诞生以来就一直在使用的爬虫策略,甚至很多新的策略都是以此为基础的。
广度优先的爬取策略是根据要爬取的URL列表进行爬取。新发现的并判断为未爬取的链接,基本上直接存放在待爬取的URL列表末尾,等待被爬取。
如上图,我们假设爬虫的待爬取的URL列表中只有A。爬虫从A网页开始爬取,从A中提取B、C、D网页,然后将B、C、D放入爬取队列,然后获取E、F、G、H、I页面依次插入到要爬取的URL列表中,以此类推。
Crawler的深度优先爬取策略
深度优先抓取的策略是,爬虫会从待抓取列表中抓取第一个网址,然后沿着这个网址继续抓取该页面的其他网址,直到该行处理完毕,再从待抓取列表中抓取, 抢第二个,依此类推。下面给出了一个说明。
作为列表中第一个要爬取的 URL,爬虫开始爬取,然后爬到 B、C、D、E、F,但是 B、C、D 中没有后续链接(这里也会删除了已经爬过的页面),从E中找到H,跟着H,找到I,然后就没有了。在F中找到G,那么这个链接的爬取就结束了。从要获取的列表中,获取下一个链接继续上述操作。
Crawler 不完整的 PageRank 爬取策略
相信很多人都知道PageRank算法。我们SEO的白话理解就是链接传递权重的算法。而如果应用于爬虫爬行,又是怎样的逻辑呢?首先,爬虫的目的是下载网页。同时,爬虫无法看到指向某个网页的所有链接。因此,在爬取过程中,爬虫无法计算所有网页的pagerank,从而导致爬行。过程中计算出的pagerank不太可靠。
非完全pagerank爬取策略是基于爬虫无法看到某个页面的所有链接,而只能看到部分情况,必须进行pagerank计算结果。
它的具体策略是将已下载的网页和要爬取的URL列表中的网页形成一个汇总。在此摘要中执行 pagerank 计算。计算完成后,待爬取的URL列表中的每个URL都会得到一个pagerank值,然后根据这个值进行倒序排序。先获取最高的pagerank分数,然后一一获取。
这是问题吗?在要爬取的URL列表中,如果最后添加了新的URL,是否需要重新计算?
不是这种情况。搜索引擎会等到待抓取的网址列表中的新网址达到一定数量后,才会重新抓取。这样效率会提高很多。毕竟,爬虫抓取第一个添加的需要时间。
Crawler的OPIC爬取策略
OPIC是在线页面重要性计算的缩写,意思是“在线页面重要性计算”。这是pagerank的升级版。
它的具体策略逻辑是爬虫给互联网上的所有网址分配一个初始分数,每个网址的分数相同。每次下载一个网页时,该网页的分数都会平均分配给该网页中的所有链接。自然而然,这个页面的分数就会被清零。对于要爬取的URL列表(当然,刚才的网页被清空了分数,也是因为已经爬过了),首先爬取的是谁的分数最高。
与pagerank不同,opic是实时计算的。这里提醒我们,如果我们只考虑opic的爬取策略。这个策略和pagerank策略都证实了一个逻辑。我们新生成的网页,被链接的次数越多,被抓取的概率就越大。
是否值得考虑您的网页布局?
爬虫爬取的大站点优先策略
大网站优先爬取,是不是顾名思义?大的网站会先爬吗?但这里有两种解释。我个人认为这两个解释爬虫都在使用。
大站优先爬取说明1:顾名思义,爬虫会对列表中要爬取的URL进行分类,然后确定域名对应的网站级别。比如优先抓取权重较大的网站域名。
大展优先爬取说明2:爬虫根据域名对列表中要爬取的URL进行分类,然后计算数量。它所属的域是待抓取列表中编号最大的域。
两种解释,一种是网站的权重高,另一种是每天发布的文章数量多,发布非常集中。但是让我们想象一下,发布如此集中和如此多文章的网站通常都是大网站,对吗?
我们在这里想什么?
写文章时,一定要及时推送到搜索引擎。一小时不能发一篇,太散了。不过这个还是要验证的,有经验的同学可以考一下。