CN106547803B - 爬取网站增量资源的方法和装置 - Google Patents
爬取网站增量资源的方法和装置 Download PDFInfo
- Publication number
- CN106547803B CN106547803B CN201510614245.8A CN201510614245A CN106547803B CN 106547803 B CN106547803 B CN 106547803B CN 201510614245 A CN201510614245 A CN 201510614245A CN 106547803 B CN106547803 B CN 106547803B
- Authority
- CN
- China
- Prior art keywords
- page
- directory
- website
- crawling
- links
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种爬取网站增量资源的方法和装置,其中,方法包括:以待爬取网站的目录层级的最顶层对应页面作为当前页面进行爬取,获得属于网站的所有链接;识别该所有链接中的各链接是内容页链接还是目录页链接;针对目录页链接,分别以各目录页链接所指向的目录页的页面作为当前页面,执行对当前页面进行爬取的操作;针对内容页链接,分别爬取未被爬取过的各内容页链接所指向的内容页,获得内容页数据并存储到网站的资源数据中,并在爬取的内容页中包括属于网站的链接时,针对包括的所有链接,执行识别所有链接是内容页链接还是目录页链接的操作。本发明实施例可以获取网站上的全部增量资源,并且提高增量资源的爬取效率。
Description
技术领域
本发明涉及互联网技术,尤其是一种爬取网站增量资源的方法和装置。
背景技术
作为互联网资源的HTML(Hypertext Markup Language,超文本标记语言)文档使用超链接连接了起来,就像织成了一张网。网络爬虫(Web Spider,也称网络蜘蛛)可以寻找互联网资源并将其采集到本地数据库,提供给后续分析使用。Web Spider的目标就是发现并抓取互联网中一切有价值的网页,该过程也称为爬取。
在当前互联网快速普及和信息化快速发展的时代,互联网网站上的资源存在更新节奏快、更新数据量大等特点。为了及时、全面的收录各互联网网站上的资源,通过网络爬虫初次发现并将某互联网网站上的资源数据采集到本地数据库后,按照一定的时间间隔,爬取该互联网网站上的增量资源数据补充到本地数据库中。
目前,爬取互联网网站上的增量资源的一种方法是:对互联网网站上的资源进行重复性的全站爬取,在本次爬取的资源数据与本地数据库中该网站的资源数据之间达到一定的重复度时,认为已获取到足够的增量资源,便停止爬取该网站。
在实现本发明的过程中,发明人发现,目前爬取互联网网站上的增量资源方法至少存在以下问题:
互联网网站的增量资源,即:增量页面,往往会存储在网站目录层级的最底层、以及首页、目录页的子页面中。这些增量资源数据,有的在首页链接中就能爬取到,有的则需要深入到较深的目录层级才能爬取到。通过目前爬取互联网网站上的增量资源方法,爬取到的增量资源数据中包括很多与本地数据库中重复的资源数据,爬取这些重复的资源数据需要占用较长的时间,降低了网站增量资源的爬取效率;并且,由于增量资源数据分布的无规律性,本次爬取到的资源数据与本地数据库中该网站的资源数据之间达到一定的重复度,并不表示已获得该网站上的全部增量资源,因此通过目前爬取互联网网站上的增量资源方法,无法爬取到所有的增量资源。
发明内容
本发明实施例所要解决的一个技术问题是:提供一种爬取网站增量资源的方法和装置、搜索引擎,以获取网站上的全部增量资源,并且提高增量资源的爬取效率。
本发明实施例提供的一种爬取网站增量资源的方法,包括:
以待爬取网站的目录层级的最顶层对应页面作为当前页面,对当前页面进行爬取,获得当前页面中属于所述网站的所有链接;
识别所述所有链接中的各链接是内容页链接还是目录页链接;
针对所述所有链接中的目录页链接,分别以各目录页链接所指向的各目录页的页面作为当前页面,执行所述对当前页面进行爬取的操作;
针对所述所有链接中的内容页链接,分别将各内容页链接与之前爬取获得的所述网站的资源数据中的页面链接进行比对,爬取未被爬取过的内容页链接所指向的内容页,获得内容页数据并存储到所述网站的资源数据中;以及
响应于所述所指向的内容页中包括属于所述网站的链接时,针对所述包括的属于所述网站的所有链接,执行所述识别所有链接是内容页链接还是目录页链接的操作。
在基于本发明上述方法的另一个实施例中,还包括:预先采集所述网站的目录层级信息、内容页与目录页的特征信息,所述特征信息包括页面组织结构和/或页面链接格式信息;
所述以待爬取网站的目录层级的最顶层对应页面作为当前页面包括:根据所述网站的目录层级信息确定所述网站的目录层级的最顶层;以所述目录层级的最顶层对应页面作为当前页面;
识别所述所有链接中的各链接是内容页链接还是目录页链接包括:根据所述内容页与目录页的特征信息分别识别所述所有链接中的各链接是内容页链接还是目录页链接。
在基于本发明上述方法的另一个实施例中,还包括:预先根据所述网站的信息更新时间间隔设置目录页的爬取时间间隔;
所述以待爬取网站的目录层级的最顶层对应页面作为当前页面,对当前页面进行爬取包括:根据所述爬取时间间隔,周期性执行所述以待爬取网站的目录层级的最顶层对应页面作为当前页面,对当前页面进行爬取的操作。
在基于本发明上述方法的另一个实施例中,还包括:
针对所述所有链接中的目录页链接,分别查询各目录页链接所指向的目录页是否在所述爬取时间间隔对应的当前爬取周期内被爬取过;
分别以各目录页链接所指向的各目录页的页面作为当前页面,执行所述对当前页面进行爬取的操作包括:
分别以各目录页链接所指向的、在当前爬取周期内未被爬取过的目录页的页面作为当前页面,执行所述对当前页面进行爬取的操作。
在基于本发明上述方法的另一个实施例中,所述目录页的爬取时间间隔大于或等于网站的信息更新时间间隔。
本发明实施例提供的一种爬取网站增量资源的装置,包括:
爬取单元,用于以待爬取网站的目录层级的最顶层对应页面作为当前页面,对当前页面进行爬取,获得当前页面中属于所述网站的所有链接;以及根据识别单元的识别结果,针对所述所有链接中的目录页链接,分别以各目录页链接所指向的目录页的页面作为当前页面,开始执行所述对当前页面进行爬取的操作;以及根据对比单元的指示,爬取未被爬取过的内容页链接所指向的内容页,获得内容页数据并存储到所述网站的资源数据中;以及响应于所述所指向的内容页中包括属于所述网站的链接时,指示所述识别单元针对所述包括的属于所述网站的所有链接识别是内容页链接还是目录页链接;
识别单元,用于识别所述所有链接中的各链接是内容页链接还是目录页链接;
对比单元,用于根据识别单元的识别结果,针对所述所有链接中的内容页链接,分别将各内容页链接与之前爬取获得的所述网站的资源数据中的页面链接进行比对,获得所述内容页链接中未被爬取过的内容页链接所指向的内容页,并指示所述爬取单元进行爬取。
在基于本发明上述装置的另一个实施例中,还包括:
存储单元,用于存储所述网站的目录层级信息、内容页与目录页的特征信息;
存储单元,用于存储所述网站的目录层级信息、内容页与目录页的特征信息,所述特征信息包括页面组织结构和/或页面链接格式信息;
所述爬取单元,具体根据所述网站的目录层级信息确定所述网站的目录层级的最顶层,并以所述最顶层对应页面作为当前页面;
所述识别单元,具体根据所述内容页与目录页的特征信息分别识别所述所有链接中的各链接是内容页链接还是目录页链接。
在基于本发明上述装置的另一个实施例中,所述爬取单元,具体用于根据预先设置的爬取时间间隔,周期性执行所述以待爬取网站的目录层级的最顶层对应页面作为当前页面,对当前页面进行爬取的操作;所述目录页的爬取时间间隔根据所述网站的信息更新时间间隔预先设置。
在基于本发明上述装置的另一个实施例中,还包括:
查询单元,用于根据识别单元的识别结果,针对所述所有链接中的目录页链接,分别查询各目录页链接所指向的目录页是否在所述爬取时间间隔对应的当前爬取周期内被爬取过;
所述爬取单元,具体分别以所述目录页链接所指向的、在当前爬取周期内未被爬取过的目录页的页面作为当前页面,开始执行所述对当前页面进行爬取的操作。
在基于本发明上述装置的另一个实施例中,所述目录页的爬取时间间隔大于或等于网站的信息更新时间间隔。
基于本发明上述实施例提供的爬取网站增量资源的方法和装置,能够全面、准确地获取到网站增量资源数据,确保不会遗漏增量页面数据;并且,无需爬取重复的资源数据,提升了网站增量资源的爬取效率。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
图1为本发明爬取网站增量资源的方法一个实施例的流程图。
图2为本发明爬取网站增量资源的方法另一个实施例的流程图。
图3为本发明爬取网站增量资源的装置一个实施例的结构示意图。
图4为本发明爬取网站增量资源的装置另一个实施例的结构示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1为本发明爬取网站增量资源的方法一个实施例的流程图。如图1所示,该实施例爬取网站增量资源的方法包括:
102,以待爬取网站的目录层级的最顶层对应页面作为当前页面,即:作为本次爬取入口点。
104,对当前页面进行爬取,获得当前页面中属于上述待爬取网站的所有链接。
106,识别上述所有链接中的各链接是内容页链接还是目录页链接。
108,针对上述所有链接中的目录页链接,分别以各目录页链接所指向的目录页的页面作为当前页面,执行104的操作。
110,针对上述所有链接中的内容页链接,分别将各内容页链接与之前爬取获得的上述待爬取网站的资源数据中的页面链接进行比对,爬取该内容页链接中未被爬取过的内容页链接所指向的内容页,获得内容页数据并存储到网站的资源数据中。
对于内容页链接中已被爬取过的内容页链接所指向的内容页,不执行本发明实施例的任何操作,避免了重复性爬取内容页数据,以提高网站增量资源的爬取效率。
112,响应于未被爬取过的内容页链接所指向的内容页中包括属于上述待爬取网站的链接时,针对该包括的属于上述待爬取网站的所有链接,执行106的操作。
其中,操作112为条件触发操作,即:在满足未被爬取过的内容页链接所指向的内容页中包括属于上述待爬取网站的链接这一条件时,才执行的操作;若未被爬取过的内容页链接所指向的内容页中不包括属于上述待爬取网站的链接,则不执行该操作112。
基于本发明上述实施例提供的爬取网站增量资源的方法,根据网站的目录层级结构,实现从顶层到底层目录页、再到内容页的方式查询增量资源,能够全面、准确地获取到网站增量资源数据,确保不会遗漏增量页面数据,与现有技术相比,由于本发明实施例是将内容页链接与该网站的资源数据中的页面链接逐一进行比对的,不会由于某一阶段二者之间的资源数据重复率比较高而停止爬取该网站从而漏掉某些新增信息;并且,由于本发明实施例无需爬取重复的资源数据,提升了网站增量资源的爬取效率,不会重复保存已经爬取过的页面资源数据,相对于现有技术减少了对数据库的存储性能要求。
在本发明爬取网站增量资源的方法另一个实施例中,还可以在1所示实施例的流程之前,预先采集上述待爬取网站的目录层级信息、预先设置内容页与目录页的特征信息。相应地,该实施例的操作102中,以上述待爬取网站的目录层级的最顶层对应页面作为当前页面时,具体可以根据上述待爬取网站的目录层级信息确定上述待爬取网站的目录层级的最顶层,以该最顶层对应页面作为当前页面。操作106中,具体可以根据预先设置的内容页与目录页的特征信息识别所有链接是内容页链接还是目录页链接。
示例性地,内容页与目录页的特征信息可以包括页面组织结构和/或页面链接格式信息。相应地,根据内容页与目录页的特征信息识别所有链接中的各链接是内容页链接还是目录页链接时,具体可以通过以下方式实现:
其中一种方式是:根据内容页与目录页的页面链接格式信息,分别识别上述所有链接中的各链接是内容页链接还是目录页链接;
另一种方式是:根据内容页与目录页的页面组织结构信息,分别识别上述所有链接中的各链接所指向的页面是内容页还是目录页,从而确定各链接是内容页链接还是目录页链接。
其中,网站的目录层级信息是指网站各级目录页以及内容页之间的层级关系,其中,目录层级的最顶层的目录页也可以称为主目录页,网站首页通常是主目录页;目录页中包含其页面链接的为该目录页的子目录页,目录页的层级高于其子目录页的层级,子目录页的层级高于包含其页面链接的内容页的层级。网站的首页通常是主目录页。例如,对于网易网站来说,其中一部分目录页之间由顶层到底层之间的层级关系是:网站首页→新闻→NBA→内容页。
目录页是指网站内部的导航页面,这类网页的内容信息主要是每篇具体文章的链接,这些链接在目录页中会按照特定规律(例如,按照时间顺序、按照类别分类)摆放,方便人们查找以及检索信息。内容页是指具体的文章页,内容页中主要提供的是访问者所关心的信息,具体以文字和/或图片的方式展现出来。
内容页与目录页不仅在功能上不同,在页面组织结构和页面链接格式上都有特定的规律,即:特征。例如,内容页的页面组织结构通常是:内容页页面的主要内容是以文字和/或图片的方式表示的信息;目录页的页面组织结构通常是:目录页页面的主要内容是链接。再如,内容页的页面链接格式通常是:内容页链接的结尾包含字符“html”;目录页的页面链接格式通常是:目录页链接的中间位置包含当前目录页的页码或者当前目录页中最后一条链接的序号。预先设置待爬取网站内容页与目录页的特征信息,后续便可以依据内容页与目录页的特征信息准确识别一个页面是目录页还是内容页,或者识别一个链接是内容页链接还是目录页链接,从而对目录页与内容页分别执行相应的操作,实现网站增量资源数据的准确、全面、高效爬取。
另外,在本发明爬取网站增量资源的方法又一个实施例中,还可以包括预先根据上述待爬取网站的信息更新时间间隔设置目录页的爬取时间间隔。在基于该又一个实施例的一个具体示例中,操作102~104中,具体可以根据上述目录页的爬取时间间隔,周期性执行以上述待爬取网站的目录层级的最顶层对应页面作为当前页面,对当前页面进行爬取的操作。
在基于该又一个实施例的另一个具体示例中,操作108具体可以通过以下方式实现:
分别针对上述所有链接中的各目录页链接,查询目录页链接所指向的目录页是否在上述爬取时间间隔对应的当前爬取周期内被爬取过。具体地,每次爬取目录页时,可以记录各目录页的爬取时间信息、或者记录各爬取周期内爬取过的目录页链接,通过查询这些记录信息,便可以确定目录页链接所指向的目录页是否在上述爬取时间间隔对应的当前爬取周期内被爬取过;
分别以上述所有链接中目录页链接所指向的、在当前爬取周期内未被爬取过的各目录页的页面作为当前页面,开始执行104的操作。
对于目录页链接所指向的各目录页中,在上述爬取时间间隔对应的当前爬取周期内已被爬取过的目录页,不再执行本发明实施例的任何操作。这样,在多个目录页之间出现循环引用关系时,例如,目录页A中包括了目录页B的链接,目录页B中又包括了目录页A的链接,由于在当前爬取周期内已被爬取过的目录页不再进行操作,避免了本发明实施例在执行过程中出现爬取死循环的情况。
在基于该又一个实施例的又一个具体示例中,上述目录页的爬取时间间隔大于或等于上述待爬取网站的信息更新时间间隔,以便不必要的浪费搜索资源。
实际应用中,可以通过软件监控网站页面变化的方式、或者人工监测网站页面变化的方式、或者从网站中读取其信息更新时间间隔信息的方式,来获得该网站的信息更新时间间隔。
在本发明上述各爬取网站增量资源的方法实施例的一个具体示例中,操作104具体可以通过如下方式实现包括:
对当前页面进行爬取;
分别判断爬取当前页面获得的各链接是否属于上述待爬取网站。例如,在一种方式中,可以通过比较爬取当前页面获得的各链接与上述待爬取网站是否具有相同的域名来判断获得的各链接是否属于上述待爬取网站;
去除爬取当前页面获得的链接中不属于上述待爬取网站的链接,获得当前页面中属于上述待爬取网站的所有链接。
通过判断爬取当前页面获得的各链接是否属于上述待爬取网站,仅当前页面中属于上述待爬取网站的所有链接,保证了本发明实施例仅获取属于当前网站的增量资源数据,而不获取其他网站的增量资源数据。
进一步地,在本发明爬取网站增量资源的方法再一个实施例中,还可以包括初次爬取上述待爬取网站,并将爬取获得的上述待爬取网站的资源数据存储本地数据库中的操作。具体地,初次爬取上述待爬取网站时,对属于上述待爬取网站的所有页面进行爬取。
图2为本发明爬取网站增量资源的方法另一个实施例的流程图。如图2所示,该实施例爬取网站增量资源的方法包括:
202,以待爬取网站的目录层级的最顶层对应页面作为当前页面,即:作为本次爬取入口点。
具体地,该操作202可以根据预先设置的目录页的爬取时间间隔,周期性执行。
204,对当前页面进行爬取。
206,分别判断爬取当前页面获得的各链接是否属于上述待爬取网站。
208,去除爬取当前页面获得的链接中不属于上述待爬取网站的链接,获得当前页面中属于上述待爬取网站的所有链接。
210,根据预先设置的内容页与目录页的特征信息,识别上述所有链接是内容页链接还是目录页链接。
针对上述所有链接中的目录页链接,执行212的操作;针对上述所有链接中的内容页链接,执行214的操作。
212,分别查询目录页链接所指向的各目录页是否在上述爬取时间间隔对应的当前爬取周期内被爬取过。
对于上述所有链接中目录页链接所指向的各目录页中,在上述爬取时间间隔对应的当前爬取周期内被爬取过的目录页,不执行本实施例的后续流程。对于上述所有链接中目录页链接所指向的各目录页中,在上述爬取时间间隔对应的当前爬取周期内未被爬取过的各目录页,分别作为当前页面,开始执行204的操作。
214,分别将上述所有链接中内容页链接与之前爬取获得的上述待爬取网站的资源数据中的页面链接进行比对,分别爬取该内容页链接中未被爬取过的内容页链接所指向的内容页,获得内容页数据并存储到网站的资源数据中,并识别爬取的内容页面中是否包括链接。
在爬取的内容页面中包括链接时,则分别针对该爬取的内容页面中的所有链接,开始执行206的操作,判断这些链接是否属于上述待爬取网站。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图3为本发明爬取网站增量资源的装置一个实施例的结构示意图。该实施例的装置可用于实现本发明上述各方法实施例。如图3所示,该实施例的装置包括爬取单元302、识别单元304、对比单元306。其中:
爬取单元302,用于以待爬取网站的目录层级的最顶层对应页面作为当前页面,对当前页面进行爬取,获得当前页面中属于上述待爬取网站的所有链接;以及根据识别单元304的识别结果,针对所有链接中的目录页链接,分别以各目录页链接所指向的目录页的页面作为当前页面,开始执行对当前页面进行爬取的操作;以及根据对比单元306的指示,爬取未被爬取过的内容页链接所指向的内容页,获得内容页数据并存储到上述待爬取网站的资源数据中;以及响应于所指向的内容页中包括属于上述待爬取网站的链接时,指示识别单元304针对包括的属于上述待爬取网站的所有链接识别是内容页链接还是目录页链接。
识别单元304,用于识别爬取单元302爬取到的上述所有链接中的各链接是内容页链接还是目录页链接。
对比单元306,用于根据识别单元304的识别结果,针对所有链接中的内容页链接,分别将各内容页链接与之前爬取获得的上述待爬取网站的资源数据中的页面链接进行比对,获得该内容页链接中未被爬取过的内容页链接所指向的内容页,并指示爬取单元302进行爬取。
基于本发明上述实施例提供的爬取网站增量资源的装置,根据网站的目录层级结构,实现从顶层到底层目录页、再到内容页的方式查询增量资源,能够全面、准确地获取到网站增量资源数据,确保不会遗漏增量页面数据;并且,由于本发明实施例无需爬取重复的资源数据,提升了网站增量资源的爬取效率,不会重复保存已经爬取过的页面资源数据,相对于现有技术减少了对数据库的存储性能要求。
图4为本发明爬取网站增量资源的装置另一个实施例的结构示意图。如图4所示,与图3所示的实施例相比,该实施例的装置还包括存储单元308,用于存储预先采集的上述待爬取网站的目录层级信息、和预先设置的内容页与目录页的特征信息。相应地,该实施例中:
爬取单元302,具体根据上述待爬取网站的目录层级信息确定上述待爬取网站的目录层级的最顶层,并以最顶层对应页面作为当前页面;
识别单元304,具体根据存储内容页与目录页的特征信息分别识别所有链接中的各链接是内容页链接还是目录页链接。
示例性地,内容页与目录页的特征信息可以是内容页与目录页的页面组织结构和/或页面链接格式信息。相应地,该示例性实施例的装置中,识别单元304具体用于:
根据预先设置的内容页与目录页的页面链接格式信息,分别识别上述所有链接中的各链接是内容页链接还是目录页链接;或者
根据存储的内容页与目录页的页面组织结构信息,识别上述所有链接中各链接所指向的页面是内容页还是目录页,从而确定上述所有链接中各链接是内容页链接还是目录页链接。
在上述爬取网站增量资源的装置各实施例的一个具体示例中,爬取单元302具体用于根据预先设置的爬取时间间隔,周期性执行以上述待爬取网站的目录层级的最顶层对应页面作为当前页面,对当前页面进行爬取的操作。其中,目录页的爬取时间间隔可以根据上述待爬取网站的信息更新时间间隔预先设置。示例性地,该目录页的爬取时间间隔可以大于或等于上述待爬取网站的信息更新时间间隔。
另外,再参见图4,在本发明爬取网站增量资源的装置又一个实施例中,还可以包括查询单元310,用于根据识别单元304的识别结果,针对上述所有链接中的目录页链接,分别查询各目录页链接所指向的目录页是否在预先设置的目录页的爬取时间间隔对应的当前爬取周期内被爬取过。相应地,该实施例中,爬取单元302具体根据查询单元310的查询结果,分别以目录页链接所指向的、在当前爬取周期内未被爬取过的各目录页的页面作为当前页面,开始执行对当前页面进行爬取的操作。
进一步地,再参见图4,在本发明爬取网站增量资源的装置再一个实施例中,还可以包括判断单元312,用于分别判断爬取单元302爬取当前页面获得的各链接是否属于上述待爬取网站;以及去除爬取当前页面获得的链接中不属于上述待爬取网站的链接,获得当前页面中属于上述待爬取网站的所有链接并返回爬取单元302。
进一步地,在本发明上述各实施例爬取网站增量资源的装置中,爬取单元302还可用于初次爬取上述待爬取网站,初次爬取该网站时,对属于该网站的所有页面进行爬取,并在本地数据库中存储爬取获得的上述待爬取网站的资源数据。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
可能以许多方式来实现本发明的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (10)
1.一种爬取网站增量资源的方法,其特征在于,包括:
以待爬取网站的目录层级的最顶层对应页面作为当前页面,对当前页面进行爬取,获得当前页面中属于所述网站的所有链接;
识别所述所有链接中的各链接是内容页链接还是目录页链接;
针对所述所有链接中的目录页链接,分别以各目录页链接所指向的各目录页的页面作为当前页面,执行所述对当前页面进行爬取的操作;
针对所述所有链接中的内容页链接,分别将各内容页链接与之前爬取获得的所述网站的资源数据中的页面链接进行比对,爬取未被爬取过的内容页链接所指向的内容页,获得内容页数据并存储到所述网站的资源数据中;以及
响应于所述所指向的内容页中包括属于所述网站的链接时,针对所述包括的属于所述网站的所有链接,执行所述识别所有链接是内容页链接还是目录页链接的操作。
2.根据权利要求1所述的方法,其特征在于,还包括:预先采集所述网站的目录层级信息、内容页与目录页的特征信息,所述特征信息包括页面组织结构和/或页面链接格式信息;
所述以待爬取网站的目录层级的最顶层对应页面作为当前页面包括:根据所述网站的目录层级信息确定所述网站的目录层级的最顶层;以所述目录层级的最顶层对应页面作为当前页面;
识别所述所有链接中的各链接是内容页链接还是目录页链接包括:根据所述内容页与目录页的特征信息分别识别所述所有链接中的各链接是内容页链接还是目录页链接。
3.根据权利要求1或2所述的方法,其特征在于,还包括:预先根据所述网站的信息更新时间间隔设置目录页的爬取时间间隔;
所述以待爬取网站的目录层级的最顶层对应页面作为当前页面,对当前页面进行爬取包括:根据所述爬取时间间隔,周期性执行所述以待爬取网站的目录层级的最顶层对应页面作为当前页面,对当前页面进行爬取的操作。
4.根据权利要求3所述的方法,其特征在于,还包括:
针对所述所有链接中的目录页链接,分别查询各目录页链接所指向的目录页是否在所述爬取时间间隔对应的当前爬取周期内被爬取过;
分别以各目录页链接所指向的各目录页的页面作为当前页面,执行所述对当前页面进行爬取的操作包括:
分别以各目录页链接所指向的、在当前爬取周期内未被爬取过的目录页的页面作为当前页面,执行所述对当前页面进行爬取的操作。
5.根据权利要求3所述的方法,其特征在于,所述目录页的爬取时间间隔大于或等于网站的信息更新时间间隔。
6.一种爬取网站增量资源的装置,其特征在于,包括:
爬取单元,用于以待爬取网站的目录层级的最顶层对应页面作为当前页面,对当前页面进行爬取,获得当前页面中属于所述网站的所有链接;以及根据识别单元的识别结果,针对所述所有链接中的目录页链接,分别以各目录页链接所指向的目录页的页面作为当前页面,开始执行所述对当前页面进行爬取的操作;以及根据对比单元的指示,爬取未被爬取过的内容页链接所指向的内容页,获得内容页数据并存储到所述网站的资源数据中;以及响应于所述所指向的内容页中包括属于所述网站的链接时,指示所述识别单元针对所述包括的属于所述网站的所有链接识别是内容页链接还是目录页链接;
识别单元,用于识别所述所有链接中的各链接是内容页链接还是目录页链接;
对比单元,用于根据识别单元的识别结果,针对所述所有链接中的内容页链接,分别将各内容页链接与之前爬取获得的所述网站的资源数据中的页面链接进行比对,获得所述内容页链接中未被爬取过的内容页链接所指向的内容页,并指示所述爬取单元进行爬取。
7.根据权利要求6所述的装置,其特征在于,还包括:
存储单元,用于存储所述网站的目录层级信息、内容页与目录页的特征信息,所述特征信息包括页面组织结构和/或页面链接格式信息;
所述爬取单元,具体根据所述网站的目录层级信息确定所述网站的目录层级的最顶层,并以所述最顶层对应页面作为当前页面;
所述识别单元,具体根据所述内容页与目录页的特征信息分别识别所述所有链接中的各链接是内容页链接还是目录页链接。
8.根据权利要求6或7所述的装置,其特征在于,所述爬取单元,具体用于根据预先设置的爬取时间间隔,周期性执行所述以待爬取网站的目录层级的最顶层对应页面作为当前页面,对当前页面进行爬取的操作;所述目录页的爬取时间间隔根据所述网站的信息更新时间间隔预先设置。
9.根据权利要求8所述的装置,其特征在于,还包括:
查询单元,用于根据识别单元的识别结果,针对所述所有链接中的目录页链接,分别查询各目录页链接所指向的目录页是否在所述爬取时间间隔对应的当前爬取周期内被爬取过;
所述爬取单元,具体分别以所述目录页链接所指向的、在当前爬取周期内未被爬取过的目录页的页面作为当前页面,开始执行所述对当前页面进行爬取的操作。
10.根据权利要求8所述的装置,其特征在于,所述目录页的爬取时间间隔大于或等于网站的信息更新时间间隔。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510614245.8A CN106547803B (zh) | 2015-09-23 | 2015-09-23 | 爬取网站增量资源的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510614245.8A CN106547803B (zh) | 2015-09-23 | 2015-09-23 | 爬取网站增量资源的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106547803A CN106547803A (zh) | 2017-03-29 |
CN106547803B true CN106547803B (zh) | 2019-12-13 |
Family
ID=58364738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510614245.8A Active CN106547803B (zh) | 2015-09-23 | 2015-09-23 | 爬取网站增量资源的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106547803B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108694193A (zh) * | 2017-04-07 | 2018-10-23 | 北京国双科技有限公司 | 网页类型的判断方法及装置 |
CN110020064A (zh) * | 2017-07-19 | 2019-07-16 | 北京国双科技有限公司 | 网页的爬取方法和装置 |
CN109948013B (zh) * | 2017-08-16 | 2021-11-05 | 北京国双科技有限公司 | 网页处理方法和装置 |
CN110750739B (zh) * | 2018-07-04 | 2022-07-05 | 北京国双科技有限公司 | 一种页面类型确定方法及装置 |
CN113965371B (zh) * | 2021-10-19 | 2023-08-29 | 北京天融信网络安全技术有限公司 | 网站监测过程中的任务处理方法、装置、终端及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102999549A (zh) * | 2012-09-25 | 2013-03-27 | 金博 | 一种实现网络爬虫任务的方法 |
CN103176985A (zh) * | 2011-12-20 | 2013-06-26 | 中国科学院计算机网络信息中心 | 一种及时高效的互联网信息爬取方法 |
CN103246675A (zh) * | 2012-02-10 | 2013-08-14 | 百度在线网络技术(北京)有限公司 | 一种用于抓取网站数据的方法与设备 |
-
2015
- 2015-09-23 CN CN201510614245.8A patent/CN106547803B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103176985A (zh) * | 2011-12-20 | 2013-06-26 | 中国科学院计算机网络信息中心 | 一种及时高效的互联网信息爬取方法 |
CN103246675A (zh) * | 2012-02-10 | 2013-08-14 | 百度在线网络技术(北京)有限公司 | 一种用于抓取网站数据的方法与设备 |
CN102999549A (zh) * | 2012-09-25 | 2013-03-27 | 金博 | 一种实现网络爬虫任务的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106547803A (zh) | 2017-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106547803B (zh) | 爬取网站增量资源的方法和装置 | |
US8868621B2 (en) | Data extraction from HTML documents into tables for user comparison | |
CN102073726B (zh) | 搜索引擎系统的结构化数据的引入方法和装置 | |
CN108566399B (zh) | 钓鱼网站识别方法及系统 | |
CN101676907A (zh) | 一种互联网资源定向获取方法及系统 | |
CN103136228A (zh) | 一种图片搜索方法以及图片搜索装置 | |
CN102609412A (zh) | 基于rss的多线程图文信息同步爬取的控制方法及系统 | |
CN105528422A (zh) | 一种主题爬虫处理方法及装置 | |
CN103823907A (zh) | 一种整合在线视频资源地址的方法、装置及引擎 | |
CN102857572A (zh) | 一种http访问请求处理方法、装置及网关设备 | |
CN112445997A (zh) | 一种提取cms多版本识别特征规则的方法及装置 | |
CN105528357A (zh) | 一种基于url和网页文档结构的相似性的网页内容提取方法 | |
JP4344596B2 (ja) | コンテンツ検索システム、コンテンツ検索プログラムおよび記録媒体 | |
CN111125485A (zh) | 基于Scrapy的网站URL爬取方法 | |
CN103246675A (zh) | 一种用于抓取网站数据的方法与设备 | |
CN106326236A (zh) | 一种网页内容识别方法和系统 | |
CN112434250B (zh) | 一种基于在线网站的cms识别特征规则提取方法 | |
CN106951505B (zh) | 网页信息获得方法及系统 | |
JP5805151B2 (ja) | 検索装置、検索システムおよびプログラム | |
CN104899320A (zh) | 网页修复方法、终端、服务器及系统 | |
JP2010272006A (ja) | 関係抽出装置、関係抽出方法、及びプログラム | |
CN104850608A (zh) | 在信息展示页面上检索关键字的方法 | |
CN110826007B (zh) | 栏目更新日期确定方法、装置、设备及可读存储介质 | |
WO2017113324A1 (zh) | 基于正则表达式的url过滤方法 | |
CN110032366B (zh) | 一种代码定位方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing Applicant after: Beijing Guoshuang Technology Co.,Ltd. Address before: 100086 Cuigong Hotel, 76 Zhichun Road, Shuangyushu District, Haidian District, Beijing Applicant before: Beijing Guoshuang Technology Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |