zoukankan      html  css  js  c++  java
  • 3.2 爬行策略

    3.2 爬行策略

    现在我们初步掌握了网络爬虫的实现原理以及相应的工作流程,下面来了解网络爬
    虫的爬行策略。

    在网络爬虫爬取的过程,在待爬取的URL列表中,可能会有很多URL地址,那么这些URL地址
    ,爬虫应该有怎样的爬取顺序呢?虽然对于通用网络爬虫而言,爬取顺序并不是那么重要。
    而对于聚焦网络爬虫而言,爬取的顺序非常重要,而爬取的顺序就是有爬行策略决定。

    爬行策略有深度优先爬行策略、广度优先爬行策略、大站优先爬行策略、反链策略、其他
    爬行策略等。


    如图3-3所示,假设有一个网站,ABCDEFG分别为站点下的网页,图中箭头表示网页的层次结构




    若该网站的所有网页都在爬行页面中,采取不同的爬行策略,则其爬取顺序不同。

    比如,按照深度优先爬行策略爬取的话,它会首先爬取第一个网页,然后再进一步对该网页
    下面的链接进行爬取。其爬行顺序为:A-> D -> E -> B -> C -> F -> G

    而如果是按照广度优先爬行策略去爬取的话,则会爬取同一层次的网页,将同一层次网页爬取
    之后再选择下一层次的网页去爬行。其爬行顺序为:A -> B -> C -> D -> E -> F -> G

    我们也可以采取大战爬行策略。我们可以按对应网页所属站点进行分类,如果某个网站的
    页面数量多,我们就称其为大战,按照这种策略,网页数量越多则网站越大,然后,优先
    爬取大站中URL地址。

    一个网页的反向链接数,指的是该网页被其他网页指向的次数,这个次数在一定程度上代
    表着该网页被其他网页的推荐次数。所以,如果按反链策略去爬行的话,那么哪个网页的
    反链数量越多,则哪个网页将被优先爬取。但是,在实际情况中,如果单纯按反链策略去
    决定一个网页的优先程度的话,那么可能会出现大量的作弊情况。比如,做一些垃圾站群,
    并将这些网站互相链接,如果这样的话,每个站点都将获得较高的反链,从而达到作弊的
    目的。作为爬虫项目方,我们当然不希望受到这种作弊行为的干扰,所以,如果采用反向
    链接策略去爬取的话,一般会考虑可靠的反链数。

    除了以上这些爬行策略,在实际中还有很多其他的爬行策略,比如OPIC策略、
    Partial PageRank策略等。

  • 相关阅读:
    CF D. Ehab and the Expected XOR Problem 贪心+位运算
    luogu 1903 [国家集训队]数颜色 / 维护队列 带修改莫队
    Test 1 T2 B 线段树合并
    CF812C Sagheer and Nubian Market 二分+贪心
    CF804B Minimum number of steps
    CF796D Police Stations BFS+染色
    CF796C Bank Hacking 细节
    k8s节点NotReady问题处理
    Elastic-Job快速入门
    Elastic-Job介绍
  • 原文地址:https://www.cnblogs.com/papapython/p/7458344.html
Copyright © 2011-2022 走看看