[发明专利]一种半自动化的垂直爬虫生成工具及方法在审
申请号: | 201410352349.1 | 申请日: | 2014-07-23 |
公开(公告)号: | CN104142985A | 公开(公告)日: | 2014-11-12 |
发明(设计)人: | 陈新蕾;吕芳;魏玉良;刘扬;黄俊恒;王佰玲 | 申请(专利权)人: | 哈尔滨工业大学(威海) |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京科亿知识产权代理事务所(普通合伙) 11350 | 代理人: | 汤东凤 |
地址: | 264209*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 半自动 垂直 爬虫 生成 工具 方法 | ||
技术领域
本发明属于搜索引擎技术领域,尤其涉及一种半自动化的垂直爬虫生成工具及方法。
背景技术
随着搜索引擎技术的发展,服务于特定领域的垂直搜索应用开始兴起。垂直爬虫可以根据特定的目标,有选择性的访问互联网页面的目标链接,获取页面信息。它不追求大而广的覆盖,只专注于某个领域或某个行业,根据搜索引擎索引策略从url队列中选择下一步抓取的页面。虽然垂直爬虫与批量爬虫、增量爬虫相比,有着精准度更高等优点,但垂直爬虫仍需人工手动干预爬虫模板的配置,这也是由垂直爬虫的特点所决定的。
人工配置模板的效率主要受这几处影响:分析网页及其源代码并找到所需位置的html代码;根据html代码编写XPath表达式;人工撰写模板代码,难免出现括号不匹配等语法错误;无法直观检查模板的内容。这也对模板配置者理解html代码、XPath表达式、Python语法(模板使用Python语法)的能力提出了要求。而此发明解决了这些问题,模板配置者只需要了解模板的构造、需要爬取的内容,便可以成功配置模板。
发明内容
本发明实施例的目的在于提供一种半自动化的垂直爬虫生成工具及方法,旨在解决现有垂直爬虫存在的需人工手动干预爬虫模板配置存在的容易出现语法错误,无法直观检查模板内容和工作效率低的问题。
本发明实施例是这样实现的,一种半自动化的垂直爬虫生成方法,该半自动化的垂直爬虫生成方法包括以下步骤:
步骤一,用户可以选择新建或采用lex-yacc技术打开模板,对模板文件进行词法与语法分析,维护符号表,构造出语法分析树;通过寻找词法与语法分析的规律,以及对整个分析过程中数据的存储与处理,根据模板内容构造出树形模板结构;
步骤二,根据要抽取的内容,在树形模板结构中增加、修改或删除模板节点,节点信息中包含跳转关系、XPath表达式、数据存储方式内容;
步骤三,保存模板,自动替用户生成语法与格式均正确的模板文件,用户选择直接开始爬取信息;如果用户模板配置正确,系统会根据树形模板结构生成语法正确的模板文件,若配置不正确,系统会提示用户需要修改的地方。
进一步,在步骤二中获取XPath表达式的方法包括:
使用lxml库提供的与XPath相关的接口,传入XPath表达式参数,获取XPath对应的页面上的信息;用户在页面上点击某项信息之后,对应的HTML标签会直接显示在HTML元素节点查看器中,同时XPath编辑器显示此元素对应的XPath表达式;HTML元素具有文本内容以及至少一个属性,选择所抽取的是属性还是文本内容;当用户确定XPath表达式之后,便通过抽取内容选择器选择所需要抽取的内容,得到了完整的XPath表达式。
本发明实施例的另一目的在于提供一种半自动化的垂直爬虫生成工具,该半自动化的垂直爬虫生成工具包括:爬虫自动生成工具模块、爬虫模块;
爬虫自动生成工具模块,用于实现用户选择新建或采用lex-yacc打开模板,对模板文件进行词法与语法分析,维护符号表,构造出语法分析树,通过寻找词法与语法分析的规律,以及对整个分析过程中数据的存储与处理,根据模板内容构造出树形模板结构;
爬虫模块,与爬虫自动生成工具模块连接,用于根据爬虫自动生成工具模块提供的树形模板,获取爬虫信息。
本发明提供的半自动化的垂直爬虫生成工具及方法,设置爬虫自动生成工具模块,用户可以选择新建或打开模板,采用lex-yacc技术打开模板,对模板文件进行词法与语法分析,维护符号表,构造出语法分析树;半自动化的垂直爬虫模板生成工具可以由系统自动生成模板内容代替人工手动配置模板,使配置模板变得更加方便快捷。本发明的爬虫使用者只需要初步了解XPath语法,甚至不需接触过XPath,只需点击鼠标、敲击少量的键盘即可配置并使用爬虫,可以大大节省相关人员的工作量。
附图说明
图1是本发明实施例提供的半自动化的垂直爬虫生成工具的结构示意图;
图中:1、爬虫自动生成工具模块;2、爬虫模块;
图2是本发明实施例提供的半自动化的垂直爬虫生成方法的流程图;
图3是本发明实施例提供的半自动化的垂直爬虫生成方法的整体流程示意图;
图4是本发明实施例提供的半自动化的垂直爬虫生成方法的确定XPath表达式的流程示意图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工业大学(威海),未经哈尔滨工业大学(威海)许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410352349.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:搜索结果展示方法及装置
- 下一篇:一种对电子地图的线要素进行处理的方法