[发明专利]网页爬取请求处理方法和装置有效
申请号: | 201510728872.4 | 申请日: | 2015-10-30 |
公开(公告)号: | CN106649354B | 公开(公告)日: | 2020-02-28 |
发明(设计)人: | 何熠皓 | 申请(专利权)人: | 北京国双科技有限公司 |
主分类号: | G06F16/951 | 分类号: | G06F16/951;G06F16/955 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 韩建伟;张永明 |
地址: | 100083 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 网页 请求 处理 方法 装置 | ||
本申请公开了一种网页爬取请求处理方法和装置。其中,该方法包括:获取新解析得到的待爬取请求,其中,待爬取请求包括待爬取页面的链接;判断是否存在存储文件,其中,存储文件用于存储待爬取请求;在判断出不存在存储文件时,将新解析得到的待爬取请求存储于请求队列中;以及在判断出存在存储文件时,将新解析得到的待爬取请求存储于存储文件中。本申请解决了直接将大量的网页爬取请求存储于内存中耗费内存空间的技术问题。
技术领域
本申请涉及数据处理领域,具体而言,涉及一种网页爬取请求处理方法和装置。
背景技术
网络爬虫在爬取页面的过程中,会不断解析出新的页面链接,网络爬虫需要根据这些页面链接构建新的爬取请求去爬取页面,而爬取的页面又会解析出新的页面链接,构建新的爬取请求,以此类推,直到爬取结束。由于新页面的产生速度往往远快于网络爬虫爬取网页的速度,因此需要把这些新的页面链接保存到一个队列里,作为待爬取请求队列。在页面数量及其庞大的情形下,该待爬取请求队列的数据量将会急剧膨胀,造成内存的大量消耗。由于待爬取链接的生成速度远大于网络爬虫爬取这些链接的速度,如果直接将待爬取链接保存到内存,一方面浪费了大量空间,另一方面在爬虫程序崩溃退出时会造成数据丢失。
针对相关技术中直接将大量的网页爬取请求存储于内存中耗费内存空间的问题,目前尚未提出有效的解决方案。
发明内容
本申请的主要目的在于提供一种网页爬取请求处理方法和装置,以解决直接将大量的网页爬取请求存储于内存中耗费内存空间的问题。
为了实现上述目的,根据本申请的一个方面,提供了一种网页爬取请求处理方法。该方法包括:获取新解析得到的待爬取请求,其中,待爬取请求包括待爬取页面的链接;判断是否存在存储文件,其中,存储文件用于存储待爬取请求;在判断出不存在存储文件时,将新解析得到的待爬取请求存储于请求队列中;以及在判断出存在存储文件时,将新解析得到的待爬取请求存储于存储文件中。
进一步地,在判断出不存在存储文件时,将新解析得到的待爬取请求存储于请求队列中包括:获取新解析得到的待爬取请求的数量和请求队列中已存储的待爬取请求的数量;判断新解析得到的待爬取请求的数量和请求队列中已存储的待爬取请求的数量之和是否小于第一预设值;当判断出新解析得到的待爬取请求的数量和请求队列中已存储的待爬取请求的数量之和小于第一预设值时,将新解析得到的待爬取请求存储于请求队列中。
进一步地,当判断出新解析得到的待爬取请求的数量和请求队列中已存储的待爬取请求的数量之和不小于第一预设值时,该方法还包括:创建存储文件;以及将新解析得到的待爬取请求存储于存储文件中。
进一步地,在判断出存在存储文件时,将新解析得到的待爬取请求存储于存储文件中包括:判断存储文件的大小是否大于第二预设值;在判断出存储文件的大小小于第二预设值时,将新解析得到的待爬取请求存储于存储文件中;在判断出存储文件的大小不小于第二预设值时,创建新的存储文件;以及将新解析得到的待爬取请求存储于新的存储文件中。
进一步地,将新解析得到的待爬取请求存储于存储文件中包括:对新解析得到的待爬取请求进行二进制编码,得到二进制的待爬取请求;以及将二进制的待爬取请求存储于存储文件中。
进一步地,在获取新解析得到的待爬取请求之前,该方法还包括:判断是否存在存储文件;当判断出存在存储文件时,从存储文件中读取待爬取请求,其中,根据读取到的待爬取请求爬取页面,并从页面中解析得到新的待爬取请求;以及当判断出不存在存储文件时,从请求队列中读取待爬取请求,其中,根据读取到的待爬取请求爬取页面,并从页面中解析得到新的待爬取请求。
进一步地,当判读出存在存储文件时,从存储文件中读取待爬取请求包括:获取存储文件上一次的读取位置;从存储文件上一次的读取位置读取预设数量的待爬取请求;判断是否已读取到存储文件的末端位置;在判断出读取到存储文件的末端位置时,删除存储文件;以及在判断出未读取到存储文件的末端位置时,标记存储文件当前的读取位置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国双科技有限公司,未经北京国双科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510728872.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:网页数据的收集方法及装置
- 下一篇:一种数据处理方法及装置