首页 / 专利库 / 软件 / 可联网软件 / 互联网浏览器 / 一种爬虫系统及其方法

一种爬虫系统及其方法

阅读:1015发布:2020-07-08

专利汇可以提供一种爬虫系统及其方法专利检索,专利查询,专利分析的服务。并且一种爬虫系统及其方法,包括带有用于动态网页的爬虫系统的爬虫 节点 ,爬虫节点同互联网相连接,所述的互联网中包含有 网站 服务器 ,所述的网站服务器中包含有带有频道的网站,所述的爬虫节点中还包括有浏览器、用于采集结果的 数据库 和频道库,所述的网站服务器中还包含有频道列表信息。这样的结构结合其方法避免了 现有技术 中无法通过 访问 时间的值来控制爬虫是否继续爬取网页内容这样就极大地限制了爬虫的使用效率的 缺陷 。,下面是一种爬虫系统及其方法专利的具体信息内容。

1.一种爬虫系统的方法,其特征在于,步骤如下:
步骤1:启动爬虫节点(2)中的用于动态网页的爬虫系统(1)进行数据采集并把数据采集结果存储到用于采集结果的数据库(6)中,并对每个网站服务器(4)中的网站及频道进行统一编码,每个网站的每个频道都存在唯一标识;
步骤2:用于动态网页的爬虫系统(1)再从频道库中提取一个频道的起始URL及该频道信息的最近爬取时频道信息的最后发布日期,并将该频道信息的最近爬取时频道信息的最后发布日期减去一天;
步骤3:用于动态网页的爬虫系统(1)对该频道所在的网站服务器(4)发起Http请求
步骤4:该频道所在的网站服务器(4)接收到该Http请求后,把该频道列表信息发送回爬虫节点(2),用于动态网页的爬虫系统(1)就取得该频道列表信息;
步骤5:用于动态网页的爬虫系统(1)对该频道列表信息进行分析,如果对应的发布日期条目中存在发布日期,则直接使用该频道列表信息的每条信息的发布日期与该频道的减去一天后的最后发布日期比较,如果晚于最后发布日期,则将该URL信息加入到任务信息中;
步骤6:如果本页列表中最后一条信息不早于最后发布日期,用于动态网页的爬虫系统(1)则对该频道所在的网站服务器(4)发起针对下一页的http请求,返回步骤4中执行;
步骤7:如果本页列表中最后一条信息早于该频道的减去一天后的最后发布日期,则该爬虫任务结束;
步骤8:如果该频道列表信息不存在发布日期这样能够绝对定位的标识,用于动态网页的爬虫系统(1)则分析确定该频道列表信息的条目数N,以及该频道列表信息中的每个条目的标题信息,以此形成标题集合{title0,title1, title2…titltN},其中title表示标题信息,然后从用于采集结果的数据库(6)中按照采集时间顺序查找title0及后续N条数据标题的数据库集合{title0 db,title1 db, title2 db…titltN db},如果标题集合和数据库集合这两个集合的散列值相同,则结束爬取任务;如果标题集合和数据库集合这两个集合的散列值不同,则用于动态网页的爬虫系统(1)则对该频道所在的网站服务器(4)发起针对下一页的http请求,返回步骤4中执行。

说明书全文

一种爬虫系统及其方法

技术领域

[0001] 本发明属于网络通信技术领域,具体涉及其一种爬虫系统及其方法。

背景技术

[0002] 目前通过http协议的last-modified来判断一个网站的网页是否更新,由此可以控制爬虫是否继续爬取网页内容。但对于动态网站或者不规范的网站,该值一般为访问时间,所以无法通过此值来控制爬虫是否继续爬取网页内容,这样就极大地限制了爬虫的使用效率。

发明内容

[0003] 本发明的目的提供一种爬虫系统及其方法,包括带有用于动态网页的爬虫系统的爬虫节点,爬虫节点同互联网相连接,所述的互联网中包含有网站服务器,所述的网站服务器中包含有带有频道的网站,所述的爬虫节点中还包括有浏览器、用于采集结果的数据库和频道库,所述的网站服务器中还包含有频道列表信息。这样的结构结合其方法避免了现有技术中无法通过访问时间的值来控制爬虫是否继续爬取网页内容这样就极大地限制了爬虫的使用效率的缺陷
[0004] 为了克服现有技术中的不足,本发明提供了一种爬虫系统及其方法的解决方案,具体如下:
[0005] 一种爬虫系统,包括带有用于动态网页的爬虫系统1的爬虫节点2,爬虫节点2同互联网3相连接,所述的互联网3中包含有网站服务器4,所述的网站服务器4中包含有带有频道的网站,所述的爬虫节点2中还包括有浏览器7、用于采集结果的数据库6和频道库5,所述的网站服务器4中还包含有频道列表信息。
[0006] 所述的频道库5包含有每个频道的起始URL及该频道信息的最近爬取时频道信息的最后发布日期。
[0007] 所述的频道列表信息包括有发布日期条目。
[0008] 所述的爬虫系统的方法,步骤如下:
[0009] 步骤1:启动爬虫节点2中的用于动态网页的爬虫系统1对每个网站服务器4中的网站及频道进行统一编码,每个网站的每个频道都存在唯一标识;
[0010] 步骤2:用于动态网页的爬虫系统1再从频道库中提取一个频道的起始URL及该频道信息的最近爬取时频道信息的最后发布日期,并将该频道信息的最近爬取时频道信息的最后发布日期减去一天;
[0011] 步骤3:用于动态网页的爬虫系统1对该频道所在的网站服务器4发起Http请求
[0012] 步骤4:该频道所在的网站服务器4接收到该Http请求后,把该频道列表信息发送回爬虫节点2,用于动态网页的爬虫系统1就取得该频道列表信息;
[0013] 步骤5:用于动态网页的爬虫系统1对该频道列表信息进行分析,如果对应的发布日期条目中存在发布日期,则直接使用该频道列表信息的每条信息的发布日期与该频道的减去一天后的最后发布日期比较,如果晚于最后发布日期,则将该URL信息加入到任务信息中;
[0014] 步骤6:如果本页列表中最后一条信息不早于最后发布日期,用于动态网页的爬虫系统1则对该频道所在的网站服务器4发起针对下一页的http请求,返回步骤4中执行;
[0015] 步骤7:如果本页列表中最后一条信息早于该频道的减去一天后的最后发布日期,则该爬虫任务结束;
[0016] 步骤8:如果该频道列表信息不存在发布日期这样能够绝对定位的标识,:用于动态网页的爬虫系统1则分析确定该频道列表信息的条目数N,以及该频道列表信息中的每个条目的标题信息,以此形成标题集合{title0,title1, title2…titltN},其中title表示标题信息,然后从用于采集结果的数据库6中按照采集时间顺序查找title0及后续N条数据标题的数据库集合{title0db,title1 db, title2 db …titltN db},如果标题集合和数据库集合这两个集合的散列值相同,则结束爬取任务;如果标题集合和数据库集合这两个集合的散列值不同,则用于动态网页的爬虫系统1则对该频道所在的网站服务器4发起针对下一页的http请求,返回步骤4中执行。
[0017] 应用本发明上述方案,通过控制爬虫是否继续爬取网页内容,这样就极大地提高了爬虫的使用效率。附图说明
[0018] 图1为本发明的爬虫系统的结构示意图。

具体实施方式

[0019] 本发明爬虫关心的主题内容为列表及列表对应的具体信息。在爬取时,主要通过列表作为爬取的入口,通过下一页来获取更多信息。因此,通过列表信息可以控制爬虫的爬取任务。对于动态网页,信息的更新主要体现在列表信息的变化。为了更好的阅读体验,信息一般以时间倒序的方式来展现。随着信息的更新,原本展现在第一页的信息会变为在第二页展现。
[0020] 下面结合附图对发明内容作进一步说明:
[0021] 参照图1所示,爬虫系统,包括带有用于动态网页的爬虫系统1的爬虫节点2,爬虫节点2同互联网3相连接,所述的互联网3中包含有网站服务器4,所述的网站服务器4中包含有带有频道的网站,所述的爬虫节点2中还包括有浏览器7、用于采集结果的数据库6和频道库5,所述的网站服务器4中还包含有频道列表信息。所述的频道库5包含有每个频道的起始URL及该频道信息的最近爬取时频道信息的最后发布日期。所述的频道列表信息包括有发布日期条目。
[0022] 所述的爬虫系统的方法,步骤如下:
[0023] 步骤1:启动爬虫节点2中的用于动态网页的爬虫系统1对每个网站服务器4中的网站及频道进行统一编码,每个网站的每个频道都存在唯一标识;
[0024] 步骤2:用于动态网页的爬虫系统1再从频道库中提取一个频道的起始URL及该频道信息的最近爬取时频道信息的最后发布日期,并将该频道信息的最近爬取时频道信息的最后发布日期减去一天,由于发布日期都是日期,不包括小时分钟,为避免漏抓,扩大一天时间,因此需要减去一天;
[0025] 步骤3:用于动态网页的爬虫系统1对该频道所在的网站服务器4发起Http请求;
[0026] 步骤4:该频道所在的网站服务器4接收到该Http请求后,把该频道列表信息发送回爬虫节点2,用于动态网页的爬虫系统1就取得该频道列表信息;
[0027] 步骤5:用于动态网页的爬虫系统1对该频道列表信息进行分析,如果对应的发布日期条目中存在发布日期,则直接使用该频道列表信息的每条信息的发布日期与该频道的减去一天后的最后发布日期比较,如果晚于最后发布日期,则将该URL信息加入到任务信息中;
[0028] 步骤6:如果本页列表中最后一条信息不早于最后发布日期,用于动态网页的爬虫系统1则对该频道所在的网站服务器4发起针对下一页的http请求,返回步骤4中执行;
[0029] 步骤7:如果本页列表中最后一条信息早于该频道的减去一天后的最后发布日期,则该爬虫任务结束;
[0030] 步骤8:如果该频道列表信息不存在发布日期这样能够绝对定位的标识,:用于动态网页的爬虫系统1则分析确定该频道列表信息的条目数N,以及该频道列表信息中的每个条目的标题信息,以此形成标题集合{title0,title1, title2…titltN},其中title表示标题信息,然后从用于采集结果的数据库6中按照采集时间顺序查找title0及后续N条数据标题的数据库集合{title0db,title1 db, title2 db …titltN db},如果标题集合和数据库集合这两个集合的散列值相同,则结束爬取任务;如果标题集合和数据库集合这两个集合的散列值不同,则用于动态网页的爬虫系统1则对该频道所在的网站服务器4发起针对下一页的http请求,返回步骤4中执行。
[0031] 以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质,在本发明的精神和原则之内,对以上实施例所作的任何简单的修改、等同替换与改进等,均仍属于本发明技术方案的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈