The invention relates to a cascade crawling method of a multi-level page based on a web crawler, which comprises the following steps: grabbing the upper level page and storing the captured data in the data analysis table of the upper level page, setting the primary key value for the object that needs to continue grabbing the lower level page in the data analysis table of the upper level page, and the corresponding primary key value of each object is different; grabbing the lower level page and The captured data is stored in the data analysis table of the subordinate page, and the foreign key value is set for the data analysis table of the subordinate page. The primary key value of the object corresponding to the subordinate page is obtained from the data analysis table of the superior page, and then it is taken as the foreign key value of the data analysis table of the subordinate page, so as to realize the associated query between the superior page and the subordinate page after the data is captured and landed. The invention is a data acquisition mode which can restore the logic before and after the web page, ensure the integrity of web page grabbing and store data according to the original web page level order, and can conveniently obtain the associated multi-level page data.
【技术实现步骤摘要】
一种基于网络爬虫的多级页面的级联爬取方法和设备
本专利技术涉及一种基于网络爬虫的多级页面的级联爬取方法和设备,属于数据爬取领域。
技术介绍
现有的上下级页面爬取方法是:先抓取上级页面,然后存储上级页面中的URL地址,并根据这些URL地址重复多次抓取下级页面,最后通过爬虫任务标识和匹配落地的数据。爬虫任务标识是和抓取爬虫,以及爬虫所抓取的数据落地文件一一对应的;当爬虫任务结束需要匹配数据时,利用爬虫任务标识将爬取的数据文件按照原网页逻辑解析成结构化数据。因爬虫任务标识只能起到和爬虫任务一一对应的作用,任务标识间并不体现层级关系,因此,通过爬虫任务标识是无法还原原始数据层级的。如果存在多级页面之间存在关联,现有爬虫技术在抓取多级层次化数据时,由于各级之间关联逻辑较复杂,验证数据完整性和准确性存在较大困难。同时,由于数据存取难度更大,多级网页数据使用规则更为繁琐。
技术实现思路
为了解决上述技术问题,本专利技术提供一种基于网络爬虫的多级页面的级联爬取方法,提供一种能够还原网页前后逻辑的数据采集模式,确保网页抓取的完整性且按原网页层级顺序,以结构化的方式存储数据,从而能够便捷地获取相关联的多层级页面数据。本专利技术技术方案如下:一种基于网络爬虫的多级页面的级联爬取方法,包括如下步骤:抓取上级页面并将抓取到的数据存储在上级页面数据解析表中,在上级页面数据解析表中对需要继续抓取下级页面的对象设置主键值,各所述对象对应的主键值均不相同;抓取下级页面并将抓取到的数据存储在下级页面数据解析表中,并对 ...
【技术保护点】
1.一种基于网络爬虫的多级页面的级联爬取方法,其特征在于,包括如下步骤:/n抓取上级页面数据,并将抓取到的数据存储在上级页面数据解析表中,在上级页面数据解析表中对需要继续抓取下级页面的对象设置主键值,所述主键值具有唯一性,通过该主键值标识对象所在的上级页面并通过该主键值关联下级页面;/n点击上级页面的URL链接,通过爬虫模拟访问下级页面,抓取下级页面数据并将抓取到的数据存储在下级页面数据解析表中,并对该下级页面数据解析表设置用于关联上级页面的外键值,具体地,从上级页面数据解析表中获取该下级页面对应的对象的主键值,然后将其作为所述下级页面数据解析表的外键值,由于主键值和外键值保持一致,根据主键值和外键值确定层级关系,从而明确抓取数据落地后上级网页和下级网页的层级关联。/n
【技术特征摘要】
1.一种基于网络爬虫的多级页面的级联爬取方法,其特征在于,包括如下步骤:
抓取上级页面数据,并将抓取到的数据存储在上级页面数据解析表中,在上级页面数据解析表中对需要继续抓取下级页面的对象设置主键值,所述主键值具有唯一性,通过该主键值标识对象所在的上级页面并通过该主键值关联下级页面;
点击上级页面的URL链接,通过爬虫模拟访问下级页面,抓取下级页面数据并将抓取到的数据存储在下级页面数据解析表中,并对该下级页面数据解析表设置用于关联上级页面的外键值,具体地,从上级页面数据解析表中获取该下级页面对应的对象的主键值,然后将其作为所述下级页面数据解析表的外键值,由于主键值和外键值保持一致,根据主键值和外键值确定层级关系,从而明确抓取数据落地后上级网页和下级网页的层级关联。
2.根据权利要求1所述的一种基于网络爬虫的多级页面的级联爬取方法,其特征在于:爬取多级页面时,抓取到的每一级页面对应的数据解析表中,对需要继续抓取下级页面的对象设置主键值,并从各级页面对应的上一级页面的数据解析表中获取主键值,将该主键值作为本级页面的外键值;具体地:除第一级页面外的各层级页面均由上一级页面中的对象被点击后打开,根据页面与所述对象之间的一一对应关系,确定各层级页面对应的对象,根据确定的对象获取该对象对应的主键值。
3.根据权利要求1所述的一种基于网络爬虫的多级页面的级联爬取方法,其特征在于:所述主键值为所述对象的跳转URL和所述对象的跳转页面ID中的至少一种。
4.根据权利要求3所述的一种基于网络爬虫的多级页面的级联爬取方法,其特征在于:所述跳转URL包括如下形式:完整的下级页面的URL链接;片段下级页面的URL链接后缀;部分参数值;上述任意形式的跳转URL都具有唯一性,均可作为主键值。
5.根据权利要求1所述的一种基于网络爬虫的多级页面的级联爬取方法,其特征在于:爬虫在爬取下级页面前,先分析下级页面是否存在分页,若是,则抓取到的各分页的数据解析表的外键值相同且该外键值为从上级页面数据解析表中获取到的该下级页面对应的对象的主键值。
6.一种基于网络爬虫的多...
【专利技术属性】
技术研发人员:邱涛,丘水文,陈昊,陈耀才,
申请(专利权)人:厦门商集网络科技有限责任公司,
类型:发明
国别省市:福建;35
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。