[发明专利]用于替换解析模板的方法与系统及爬取方法在审
申请号: | 201611036900.7 | 申请日: | 2016-11-22 |
公开(公告)号: | CN108090080A | 公开(公告)日: | 2018-05-29 |
发明(设计)人: | 李强;廖耀华 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京律智知识产权代理有限公司 11438 | 代理人: | 邢雪红;姜怡 |
地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 解析 任务监控器 替换 爬虫 模板内容 抓取 任务解析 监控 重启 存储 变更 | ||
本公开提供一种用于替换解析模板的方法与系统,所述解析模板用于爬虫的爬取任务解析。方法包括:向任务监控器注册,以监控所述解析模板的变动,所述任务监控器存储所述解析模板并监控所述解析模板的变动;获取来自所述任务监控器的解析模板变动消息;获取变动后的解析模板内容。本公开提供的用于替换解析模板的方法与系统可以实现在不对爬虫抓取端进行重启的情况下完成对解析模板内容进行及时变更。
技术领域
本公开涉及互联网技术领域,具体而言,涉及一种用于替换解析模板的方法与系统。
背景技术
随着互联网信息的爆炸式增长,出现了越来越多以获取大量信息为基础的应用软件,例如搜索引擎、电子商务比价系统、舆情系统等。其中,网络爬虫是这些应用不可缺少的重要底层组成部分。而对于大数据量互联网信息,单节点爬虫已经无法满足现实的需求,于是分布式网络爬虫应运而生。
对于一套分布式网络爬虫系统,一般分为爬虫调度端和爬虫抓取端两部分。其中,爬虫调度端主要是负责将抓取任务的合理分配给多个爬虫抓取端,同时接收保存抓取端返回的抓取结果数据;爬虫抓取端主要是负责模拟访问请求,实际去抓取网页的Html原数据,并通过配置的解析模板,将Html原数据进行解析抽取,获取到抓取结果,回传给爬虫调度端。其中解析模板的内容一般为正则表达式,用于匹配网页内容,从而获取到抓取数据。
因为每个网站的网页Html结构是不同的,所以针对不同的网站抓取任务,配置的解析模板也是不同的。当网站改版升级时,网站Html结构会发生变更,此时就需要对所有爬虫抓取端的解析模板进行适应更新,否则就会出现解析数据异常的问题。
因此,需要一种改进的替换解析模板的方法。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种用于替换解析模板的方法与系统,用于实现在不对爬虫抓取端进行重启的情况下完成对解析模板内容进行及时变更,达到解析模板内容自动化热替换的效果。
根据本公开的一个方面,提供一种用于替换解析模板的方法,所述解析模板用于爬虫的爬取任务解析,包括:
向任务监控器注册,以监控所述解析模板的变动,所述任务监控器存储所述解析模板并监控所述解析模板的变动;
获取来自所述任务监控器的解析模板变动消息;
获取变动后的解析模板内容。
在本公开的一种示例性实施例中,所述任务监控器通过Zookeeper服务器实现。
在本公开的一种示例性实施例中,所述解析模板的内容包括提取网页内容的正则表达式。
在本公开的一种示例性实施例中,所述任务监控器以任务树形式存储一或多个所述解析模板。
在本公开的一种示例性实施例中,监控所述解析模板的变动包括监控一或多个解析模板的变动。
在本公开的一种示例性实施例中,还包括:将所述变动后的解析模板内容以Key-value形式存储到内存中。
在本公开的一种示例性实施例中,还包括:对解析模板初始化。
根据本公开的一个方面,提供一种用于替换解析模板的系统,所述解析模板用于爬虫的爬取任务解析,包括:
监控注册模块,用于向任务监控器注册,以监控所述解析模板的变动,所述任务监控器存储所述解析模板并监控所述解析模板的变动;
通知获取模块,用于获取来自所述任务监控器的解析模板变动消息;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611036900.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种即时聊天工具的聊天记录处理方法及装置
- 下一篇:一种内容推荐方法与装置