一种生成网络爬虫配置文件的方法及装置制造方法及图纸

技术编号:14015989 阅读:128 留言:0更新日期:2016-11-18 01:02
本发明专利技术公开了一种生成网络爬虫配置文件的方法,所述方法包括:基于用户的输入确定待获取的目标内容;定位所述目标内容在匹配文件中的位置;以所述位置为中心,在所述匹配文件中分别向前和向后查找区分性标签;基于向前查找到的第一区分性标签以及向后查找到的第二区分性标签生成正则表达式;其中,所述区分性标签是包含有符合预设条件的标签属性的标签,所述符合预设条件的标签属性使得包含有所述标签属性的标签在所述匹配文件中出现的次数低于预设阈值。同时,本发明专利技术还公开了一种生成网络爬虫配置文件的装置。

【技术实现步骤摘要】

本专利技术涉及网络技术,具体涉及一种生成网络爬虫配置文件的方法及装置
技术介绍
定向的网络爬虫在进行信息爬取的时候,需要根据所要获得的信息定制配置文件。配置文件中包含所要爬取信息的入口链接,划定所要爬取的信息所在区域,表明所要爬取的信息如何进行翻页扩展,如何从网页中准确的获取具体的每一项信息等等。换句话说,配置文件定义了网络爬虫进行爬取的流程,以及所要获取的结果;且主要通过各种正则表达式来定义爬取的流程以及抽取的内容。正则表达式是一种模式匹配的语言,只需要定义出所要获取的信息在网页中唯一出现的模式,并将其应用到目标网页中,即可获得所需的结果。但是,现有编写配置文件的方法至少包括以下问题:1、正则表达式作为模式匹配语言,其突出的有点便是灵活,但是也正是由于其太过灵活,造成了针对同一目标信息,不同人员可能配置出不同的模式,而这些模式都能够成功匹配目标信息。甚至同一个人不同时间点去配置,也可能配置出不同的结果。也就是说,配置结果不够规范,虽然可能都能够使用,但是千差万别,不利于阅读和维护。2、正则表达式一般是针对特定的网页进行编写,但是一般来说我们需要其能够工作于一批结构和风格相似的网页上。而针对特定网页进行配置的正则表达式,如何才能够适用于一批网页,通常和编写人员的编写经验和技术水平密切相关。即通过正则表达式直接进行编写配置文件,对于编写人员的技术水平和配置经验有很高的要求。3、定向的配置文件的一个特点是由于网页会不时进行改版等操作,一旦出现这种情况,哪怕只是细微的变化,也会造成由正则编写的配置文件失效。即正则表达式的敏感性很高,适应性不强,容易失效,一旦失效需要花费很大的人力和时间去维护。
技术实现思路
有鉴于此,本专利技术期望提供一种生成网络爬虫配置文件的方法及装置,至少能解决上述问题之一。为达到上述目的,本专利技术的技术方案是这样实现的:本专利技术提供了一种生成网络爬虫配置文件的方法,所述方法包括:基于用户的输入确定待获取的目标内容;定位所述目标内容在匹配文件中的位置;以所述位置为中心,在所述匹配文件中分别向前和向后查找区分性标签;基于向前查找到的第一区分性标签以及向后查找到的第二区分性标签生成正则表达式;其中,所述区分性标签是包含有符合预设条件的标签属性的标签,所述符合预设条件的标签属性使得包含有所述标签属性的标签在所述匹配文件中出现的次数低于预设阈值。上述方案中,可选地,所述方法还包括:利用所述正则表达式在所述匹配文件中抽取信息;比较抽取结果是否与所述目标内容相匹配;如果不匹配,以所述位置为中心,在匹配文件中向前和向后查找新的区分性标签;并利用查找到的新的第一区分性标签以及原查找到的第一区分性标签、向后查找到的新的第二区分性标签以及原查找到的第二区分性标签,重新生成正则表达式,直至利用所述正则表达式在所述匹配文件中的抽取结果与所述目标内容相匹配。上述方案中,可选地,所述基于用户的输入确定待获取的目标内容,包括:基于用户的输入获得第一信息以及第二信息;所述第一信息包括指定的爬取对象、爬取顺序;所述第二信息包括从爬取结果中抽取的内容;根据所述第一信息以及所述第二信息确定待获取的目标内容。上述方案中,可选地,所述定位所述目标内容在匹配文件中的位置,包括:确定匹配文件的源类型;基于所述源类型选定文档对象模型;通过文档对象模型定位所述目标内容在所述匹配文件中的位置。上述方案中,可选地,所述以所述位置为中心,在所述匹配文件中分别向前或向后查找区分性标签,包括:以所述位置为中心,在匹配文件中向前确定距离所述位置最近的标签,并判断所述标签是否为区分性标签,如果是,将所述标签确定为第一区分性标签;如果不是,以所述标签为中心,继续向前查找距离所述标签最近的标签,直至查找到的标签是区分性标签,并将查找到的是区分性标签的标签确定为第一区分性标签;以所述位置为中心,在匹配文件中向后确定距离所述位置最近的标签,并判断所述标签是否为区分性标签,如果是,将所述标签确定为第二区分性标签;如果不是,以所述标签为中心,继续向前查找距离所述标签最近的标签,直至查找到的标签是区分性标签,并将查找到的是区分性标签的标签确定为第二区分性标签。上述方案中,可选地,所述利用向前查找到的第一区分性标签以及向后查找到的第二区分性标签生成正则表达式,包括:保留所述第一区分性标签以及所述第二区分性标签;将所述第一区分性标签与所述第二区分性标签之间的内容用正则表达式的通配符表示;依据所述第一区分性标签、所述第二区分性标签、以及用通配符表示的所述第一区分性标签与所述第二区分性标签之间的内容,生成正则表达式。本专利技术还提供了一种生成网络爬虫配置文件的装置,包括:传感器,用于基于用户的输入确定待获取的目标内容;处理器,用于定位所述目标内容在匹配文件中的位置;以所述位置为中心,在所述匹配文件中分别向前和向后查找区分性标签;利用向前查找到的第一区分性标签以及向后查找到的第二区分性标签生成正则表达式;其中,所述区分性标签是包含有符合预设条件的标签属性的标签,所述符合预设条件的标签属性使得包含有所述标签属性的标签在所述匹配文件中出现的次数低于预设阈值。上述方案中,可选地,所述处理器,还用于:利用所述正则表达式在所述匹配文件中抽取信息;比较抽取结果是否与所述目标内容相匹配;如果不匹配,以所述位置为中心,在匹配文件中向前和向后查找新的区分性标签;并利用查找到的新的第一区分性标签以及原查找到的第一区分性标签、向后查找到的新的第二区分性标签以及原查找到的第二区分性标签,重新生成正则表达式,直至利用所述正则表达式在所述匹配文件中的抽取结果与所述目标内容相匹配。上述方案中,可选地,所述传感器,还用于:基于用户的输入获得第一信息以及第二信息;所述第一信息包括指定的爬取对象、爬取顺序;所述第二信息包括从爬取结果中抽取的内容;根据所述第一信息以及所述第二信息确定待获取的目标内容。上述方案中,可选地,所述处理器,还用于:确定匹配文件的源类型;基于所述源类型选定文档对象模型;通过文档对象模型定位所述目标内容在所述匹配文件中的位置。上述方案中,可选地,所述处理器,还用于:以所述位置为中心,在匹配文件中向前确定距离所述位置最近的标签,并判断所述标签是否为区分性标签,如果是,将所述标签确定为第一区分性标签;如果不是,以所述标签为中心,继续向前查找距离所述标签最近的标签,直至查找到的标签是区分性标签,并将查找到的是区分性标签的标签确定为第一区分性标签;以所述位置为中心,在匹配文件中向后确定距离所述位置最近的标签,并判断所述标签是否为区分性标签,如果是,将所述标签确定为第二区分性标签;如果不是,以所述标签为中心,继续向前查找距离所述标签最近的标签,直至查找到的标签是区分性标签,并将查找到的是区分性标签的标签确定为第二区分性标签。上述方案中,可选地,所述处理器,还用于:保留所述第一区分性标签以及所述第二区分性标签;将所述第一区分性标签与所述第二区分性标签之间的内容用正则表达式的通配符表示;依据所述第一区分性标签、所述第二区分性标签、以及用通配符表示的所述第一区分性标签与所述第二区分性标签之间的内容,生成正则表达式。本专利技术还提供了一种生成网络爬虫配置文件的装置,包括:确定单元,用于基于用户的输入确定待获取的本文档来自技高网
...
一种生成网络爬虫配置文件的方法及装置

【技术保护点】
一种生成网络爬虫配置文件的方法,其特征在于,所述方法包括:基于用户的输入确定待获取的目标内容;定位所述目标内容在匹配文件中的位置;以所述位置为中心,在所述匹配文件中分别向前和向后查找区分性标签;基于向前查找到的第一区分性标签以及向后查找到的第二区分性标签生成正则表达式;其中,所述区分性标签是包含有符合预设条件的标签属性的标签,所述符合预设条件的标签属性使得包含有所述标签属性的标签在所述匹配文件中出现的次数低于预设阈值。

【技术特征摘要】
1.一种生成网络爬虫配置文件的方法,其特征在于,所述方法包括:基于用户的输入确定待获取的目标内容;定位所述目标内容在匹配文件中的位置;以所述位置为中心,在所述匹配文件中分别向前和向后查找区分性标签;基于向前查找到的第一区分性标签以及向后查找到的第二区分性标签生成正则表达式;其中,所述区分性标签是包含有符合预设条件的标签属性的标签,所述符合预设条件的标签属性使得包含有所述标签属性的标签在所述匹配文件中出现的次数低于预设阈值。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:利用所述正则表达式在所述匹配文件中抽取信息;比较抽取结果是否与所述目标内容相匹配;如果不匹配,以所述位置为中心,在匹配文件中向前和向后查找新的区分性标签;并利用查找到的新的第一区分性标签以及原查找到的第一区分性标签、向后查找到的新的第二区分性标签以及原查找到的第二区分性标签,重新生成正则表达式,直至利用所述正则表达式在所述匹配文件中的抽取结果与所述目标内容相匹配。3.根据权利要求1所述的方法,其特征在于,所述基于用户的输入确定待获取的目标内容,包括:基于用户的输入获得第一信息以及第二信息;所述第一信息包括指定的爬取对象、爬取顺序;所述第二信息包括从爬取结果中抽取的内容;根据所述第一信息以及所述第二信息确定待获取的目标内容。4.根据权利要求1所述的方法,其特征在于,所述定位所述目标内容在匹配文件中的位置,包括:确定匹配文件的源类型;基于所述源类型选定文档对象模型;通过文档对象模型定位所述目标内容在所述匹配文件中的位置。5.根据权利要求1所述的方法,其特征在于,所述以所述位置为中心,在所述匹配文件中分别向前或向后查找区分性标签,包括:以所述位置为中心,在匹配文件中向前确定距离所述位置最近的标签,并判断所述标签是否为区分性标签,如果是,将所述标签确定为第一区分性标签;如果不是,以所述标签为中心,继续向前查找距离所述标签最近的标签,直至查找到的标签是区分性标签,并将查找到的是区分性标签的标签确定为第一区分性标签;以所述位置为中心,在匹配文件中向后确定距离所述位置最近的标签,并判断所述标签是否为区分性标签,如果是,将所述标签确定为第二区分性标签;如果不是,以所述标签为中心,继续向前查找距离所述标签最近的标签,直至查找到的标签是区分性标签,并将查找到的是区分性标签的标签确定为第二区分性标签。6.根据权利要求1所述的方法,其特征在于,所述利用向前查找到的第一区分性标签以及向后查找到的第二区分性标签生成正则表达式,包括:保留所述第一区分性标签以及所述第二区分性标签;将所述第一区分性标签与所述第二区分性标签之间的内容用正则表达式的通配符表示;依据所述第一区分性标签、所述第二区分性标签、以及用通配符表示的所述第一区分性标签与所述第二区分性标签之间的内容,生成正则表达式。7.一种生成网络爬虫配置文件的装置,包括:传感器,用于基于用户的输入确定待获取的目标内容;处理器,用于定位所述目标内容在匹配文件中的位置;以所述位置为中心,在所述匹配文件中分别向前和向后查找区分性标签;利用向前查找到的第一区分性标签以及向后查找到的第二区分性标签生成正则表达式;其中,所述区分性标签是包含有符合预设条件的...

【专利技术属性】
技术研发人员:卓雷
申请(专利权)人:联想北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1