CN105207852A - 一种基于分布式网络数据定向采集的方法 - Google Patents
一种基于分布式网络数据定向采集的方法 Download PDFInfo
- Publication number
- CN105207852A CN105207852A CN201510648636.1A CN201510648636A CN105207852A CN 105207852 A CN105207852 A CN 105207852A CN 201510648636 A CN201510648636 A CN 201510648636A CN 105207852 A CN105207852 A CN 105207852A
- Authority
- CN
- China
- Prior art keywords
- data
- url
- acquisition
- collected
- network data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于分布式网络数据定向采集的方法,具体按照以下步骤:步骤1、确定需要采集的URL;步骤2、针对步骤1中要采集的URL进行分析,根据采集数据的格式制定网络数据采集策略,将采集策略进行配置,降低了待采集的URL数量;步骤3、根据步骤2得到的降低后的待采集的URL,利用内存数据库完成数据的采集。本发明一种基于分布式网络数据定向采集的方法,采用分布式的方式进行网络数据的采集,解决了网络数据中网页数量巨大、网页更新数量巨大并更新频率快、网页中部分数据为动态加载等网络数据无法正常采集的问题,提升了网络数据采集的效率,定制采集策略完成网络数据定向采集。
Description
技术领域
本发明属于网页采集技术领域,具体涉及一种基于分布式网络数据定向采集的方法。
背景技术
随着互联网的不断发展,网络信息每时每刻都在不间断的增长,在众多的网页中采集一定需求的网络数据将变的十分复杂。要在众多繁杂的网页进行网络数据定向采集,会遇到以下几个问题:
抓取过程中,抓取网页数量巨大。
抓取过程中,网页更新数量巨大,一般的网站,比如新闻,电子商务网站,页面基本是实时更新。
抓取过程中,大部分的网页都是动态的,多媒体等非常规数据采集。
发明内容
本发明的目的是提供一种基于分布式网络数据定向采集的方法,解决了现有网络数据中网页数量巨大、网页更新数量巨大且更新频率快、网页中部分数据为动态加载导致网络数据无法正常采集的问题。
本发明所采用的技术方案是,一种基于分布式网络数据定向采集的方法,具体按照以下步骤:
步骤1、确定需要采集的URL;
步骤2、针对步骤1中要采集的URL进行分析,根据采集数据的格式制定网络数据采集策略,将采集策略进行配置,降低了待采集的URL数量;
步骤3、根据步骤2得到的降低后的待采集的URL,利用内存数据库完成数据的采集。
本发明的特点还在于:
步骤2根据采集数据的格式制定网络数据采集策略,将采集策略进行配置,具体为:根据网站的URL特征,选出需要采集的类型的网页;或者根据需要采集的URL的正则表达式;或者获得不需要采集的URL的正则表达式。
步骤3中内存数据库的数据结构包括为:
待采集队列模块:将需要采集的URL信息放入待采集队列中,方便调度模块从队列中抽取URL信息;
已采集集合模块:记录已经采集的页面数据项及其采集的时间,并根据配置的入库方式,将采集的数据项存入相应的数据库中;
调度模块:主要是对待采集的URL队列进行采集调度,根据配置的采集策略确定数据采集的优先级,将采集的数据内容放入已采集集合中;
采集模块:主要从待采集队列中读取URL,根据获取的数据采集规则对网页数据进行采集,其中采集的内容包括需要精确采集的数据项,和页面中包含的待采集的URL。
步骤3利用内存数据库完成数据的采集,具体为:
步骤3.1、将步骤2降低后的待采集的URL放入到待采集队列模块中;
步骤3.2、调度模块从步骤3.1的待采集队列模块中选取URL,然后放入到采集模块中;
步骤3.3、通过URL对网页进行数据请求,获取网页内容,获取页面内容后,采集模块根据配置文件中配置的数据采集规则,对页面内容进行精准定位,获取准确的采集数据项;同时采集模块会对该页面中包含的待采集的URL信息进行采集;
步骤3.4、将步骤3.3的采集结果返回到调度模块中,将从页面内容中获取的精准数据项内容放入到已采集集合模块中,根据配置文件中定义的采集数据入库方式,将采集到的精准的数据项内容存入相应的数据库中,并在已采集集合模块中记录已经采集的页面数据项及采集的时间;从页面内容中获取的待采集的URL信息放入待采集队列中;
步骤3.5、完成一个URL的页面采集后,调度模块将继续从待采集队列模块中抽取URL进行相应的网页数据采集,一直到待采集队列为空时,表示所有的URL采集完成,即完成网站数据的定向采集。
步骤3.3中获取网页内容时,如果网页内容中包含动态加载的信息,可以使用webkit模拟浏览器完成页面信息的动态加载。
内存数据库存储或者访问速度遇到瓶颈时,增大内存数据库集群数和采集集群数量。
本发明的有益效果是:本发明一种基于分布式网络数据定向采集的方法,通过分布式的方式解决了现有网络数据中网页数量巨大、网页更新数量巨大且更新频率快、网页中部分数据为动态加载导致网络数据无法正常采集的问题,提升网络数据采集效率,定制采集策略完成网络数据定向采集。
附图说明
图1是本发明一种基于分布式网络数据定向采集的方法的流程图。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明一种基于分布式网络数据定向采集的方法,流程如图1所示,具体按照以下步骤:
步骤1、确定需要采集的URL;
步骤2、针对步骤1中要采集的URL进行分析,根据采集数据的格式制定网络数据采集策略,将采集策略进行配置,对于定向抓取,一般的网站的URL有一定的特征,比如可能仅仅关心.html,.htm,.asp,.aspx,.php,.jsp,.jspx类型的网页;或者是如果可以得到目标网站的正则,则可以大大的降低抓取的数量;又或者存在不用关心某一类网页,通过URL的正则能极大的降低抓取数量,具体为:根据网站的URL特征,选出需要采集的类型的网页;或者根据需要采集的URL的正则表达式;或者获得不需要采集的URL的正则表达式,降低了待采集的URL数量;
步骤3、根据步骤2得到的降低后的待采集的URL,利用内存数据库完成数据的采集,使用分布式的存储方式来提供下载存储的性能,分布式使用内存数据库实现,内存数据库中存储了工程的request,stats信息,能够对各个机器上的采集实现集中管理,这样可以解决采集的性能瓶颈,利用内存数据库的高效和易于扩展能够轻松实现高效率下载:当内存数据库存储或者访问速度遇到瓶颈时,增大内存数据库集群数和采集集群数量。
其中,内存数据库的数据结构包括为:
待采集队列模块:将需要采集的URL信息放入待采集队列中,方便调度模块从队列中抽取URL信息;
已采集集合模块:记录已经采集的页面数据项及其采集的时间,并根据配置的入库方式,将采集的数据项存入相应的数据库中;
调度模块:主要是对待采集的URL队列进行采集调度,根据配置的采集策略确定数据采集的优先级,将采集的数据内容放入已采集集合中;
采集模块:主要从待采集队列中读取URL,根据获取的数据采集规则对网页数据进行采集,其中采集的内容包括需要精确采集的数据项,和页面中包含的待采集的URL。
步骤3利用内存数据库完成数据的采集,具体为:
步骤3.1、将步骤2降低后的待采集的URL放入到待采集队列模块中;
步骤3.2、调度模块从步骤3.1的待采集队列模块中选取URL,然后放入到采集模块中;
步骤3.3、通过URL对网页进行数据请求,获取网页内容,如果网页内容中包含动态加载的信息,可以使用webkit模拟浏览器完成页面信息的动态加载;获取页面内容后,采集模块根据配置文件中配置的数据采集规则,对页面内容进行精准定位,获取准确的采集数据项;同时采集模块会对该页面中包含的待采集的URL信息进行采集;
WebKit包含一个网页引擎WebCore和一个脚本引擎JavaScriptCore,它们分别对应的是KDE的KHTML和KJS;使用浏览器作为采集能更好的模拟用户浏览的行为,能够天然的解决JS和AJAX等动态页面加载的问题,针对采集性能的瓶颈问题,可以通过增加采集集群数量来解决。
步骤3.4、将步骤3.3的采集结果返回到调度模块中,将从页面内容中获取的精准数据项内容放入到已采集集合模块中,根据配置文件中定义的采集数据入库方式,将采集到的精准的数据项内容存入相应的数据库中,并在已采集集合模块中记录已经采集的页面数据项及采集的时间;从页面内容中获取的待采集的URL信息放入待采集队列中;
步骤3.5、完成一个URL的页面采集后,调度模块将继续从待采集队列模块中抽取URL进行相应的网页数据采集,一直到待采集队列为空时,表示所有的URL采集完成,即完成网站数据的定向采集。
本发明一种基于分布式网络数据定向采集的方法,采用分布式的方式进行网络数据的采集,解决了网络数据中网页数量巨大、网页更新数量巨大并更新频率快、网页中部分数据为动态加载等网络数据无法正常采集的问题,提升了网络数据采集的效率,定制采集策略完成网络数据定向采集。
Claims (6)
1.一种基于分布式网络数据定向采集的方法,其特征在于,具体按照以下步骤:
步骤1、确定需要采集的URL;
步骤2、针对步骤1中要采集的URL进行分析,根据采集数据的格式制定网络数据采集策略,将采集策略进行配置,降低了待采集的URL数量;
步骤3、根据步骤2得到的降低后的待采集的URL,利用内存数据库完成数据的采集。
2.根据权利要求1所述的一种基于分布式网络数据定向采集的方法,其特征在于,所述步骤2根据采集数据的格式制定网络数据采集策略,将采集策略进行配置,具体为:根据网站的URL特征,选出需要采集的类型的网页;或者根据需要采集的URL的正则表达式;或者获得不需要采集的URL的正则表达式。
3.根据权利要求1所述的一种基于分布式网络数据定向采集的方法,其特征在于,所述步骤3中内存数据库的数据结构包括为:
待采集队列模块:将需要采集的URL信息放入待采集队列中,方便调度模块从队列中抽取URL信息;
已采集集合模块:记录已经采集的页面数据项及其采集的时间,并根据配置的入库方式,将采集的数据项存入相应的数据库中;
调度模块:主要是对待采集的URL队列进行采集调度,根据配置的采集策略确定数据采集的优先级,将采集的数据内容放入已采集集合中;
采集模块:主要从待采集队列中读取URL,根据获取的数据采集规则对网页数据进行采集,其中采集的内容包括需要精确采集的数据项,和页面中包含的待采集的URL。
4.根据权利要求3所述的一种基于分布式网络数据定向采集的方法,其特征在于,所述步骤3利用内存数据库完成数据的采集,具体为:
步骤3.1、将步骤2降低后的待采集的URL放入到待采集队列模块中;
步骤3.2、调度模块从步骤3.1的待采集队列模块中选取URL,然后放入到采集模块中;
步骤3.3、通过URL对网页进行数据请求,获取网页内容,获取页面内容后,采集模块根据配置文件中配置的数据采集规则,对页面内容进行精准定位,获取准确的采集数据项;同时采集模块会对该页面中包含的待采集的URL信息进行采集;
步骤3.4、将步骤3.3的采集结果返回到调度模块中,将从页面内容中获取的精准数据项内容放入到已采集集合模块中,根据配置文件中定义的采集数据入库方式,将采集到的精准的数据项内容存入相应的数据库中,并在已采集集合模块中记录已经采集的页面数据项及采集的时间;从页面内容中获取的待采集的URL信息放入待采集队列中;
步骤3.5、完成一个URL的页面采集后,调度模块将继续从待采集队列模块中抽取URL进行相应的网页数据采集,一直到待采集队列为空时,表示所有的URL采集完成,即完成网站数据的定向采集。
5.根据权利要求4所述的一种基于分布式网络数据定向采集的方法,其特征在于,所述步骤3.3中获取网页内容时,如果网页内容中包含动态加载的信息,可以使用webkit模拟浏览器完成页面信息的动态加载。
6.根据权利要求1所述的一种基于分布式网络数据定向采集的方法,其特征在于,所述内存数据库存储或者访问速度遇到瓶颈时,增大内存数据库集群数和采集集群数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510648636.1A CN105207852A (zh) | 2015-10-09 | 2015-10-09 | 一种基于分布式网络数据定向采集的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510648636.1A CN105207852A (zh) | 2015-10-09 | 2015-10-09 | 一种基于分布式网络数据定向采集的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105207852A true CN105207852A (zh) | 2015-12-30 |
Family
ID=54955303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510648636.1A Pending CN105207852A (zh) | 2015-10-09 | 2015-10-09 | 一种基于分布式网络数据定向采集的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105207852A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108038218A (zh) * | 2017-12-22 | 2018-05-15 | 联想(北京)有限公司 | 一种分布式爬虫方法、电子设备及服务器 |
CN109033195A (zh) * | 2018-06-28 | 2018-12-18 | 上海盛付通电子支付服务有限公司 | 网页信息的获取方法、获取设备及计算机可读介质 |
CN112738137A (zh) * | 2021-03-30 | 2021-04-30 | 深圳红途创程科技有限公司 | 数据采集和链路处理方法、装置、计算机设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7562387B2 (en) * | 2001-09-07 | 2009-07-14 | International Business Machines Corporation | Method and apparatus for selective disabling of tracking of click stream data |
CN101715004A (zh) * | 2009-11-12 | 2010-05-26 | 中国科学院计算技术研究所 | 面向网络视频的分布式采集方法和系统 |
CN102073683A (zh) * | 2010-12-22 | 2011-05-25 | 四川大学 | 一种分布式的实时新闻信息采集系统 |
CN102118400A (zh) * | 2009-12-31 | 2011-07-06 | 北京四维图新科技股份有限公司 | 数据采集方法和数据采集系统 |
CN103731298A (zh) * | 2013-11-15 | 2014-04-16 | 中国航天科工集团第二研究院七〇六所 | 一种大规模分布式网络安全数据采集方法与系统 |
CN104361061A (zh) * | 2014-11-03 | 2015-02-18 | 烽火通信科技股份有限公司 | 一种web页面信息感知采集方法 |
-
2015
- 2015-10-09 CN CN201510648636.1A patent/CN105207852A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7562387B2 (en) * | 2001-09-07 | 2009-07-14 | International Business Machines Corporation | Method and apparatus for selective disabling of tracking of click stream data |
CN101715004A (zh) * | 2009-11-12 | 2010-05-26 | 中国科学院计算技术研究所 | 面向网络视频的分布式采集方法和系统 |
CN102118400A (zh) * | 2009-12-31 | 2011-07-06 | 北京四维图新科技股份有限公司 | 数据采集方法和数据采集系统 |
CN102073683A (zh) * | 2010-12-22 | 2011-05-25 | 四川大学 | 一种分布式的实时新闻信息采集系统 |
CN103731298A (zh) * | 2013-11-15 | 2014-04-16 | 中国航天科工集团第二研究院七〇六所 | 一种大规模分布式网络安全数据采集方法与系统 |
CN104361061A (zh) * | 2014-11-03 | 2015-02-18 | 烽火通信科技股份有限公司 | 一种web页面信息感知采集方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108038218A (zh) * | 2017-12-22 | 2018-05-15 | 联想(北京)有限公司 | 一种分布式爬虫方法、电子设备及服务器 |
CN108038218B (zh) * | 2017-12-22 | 2022-04-22 | 联想(北京)有限公司 | 一种分布式爬虫方法、电子设备及服务器 |
CN109033195A (zh) * | 2018-06-28 | 2018-12-18 | 上海盛付通电子支付服务有限公司 | 网页信息的获取方法、获取设备及计算机可读介质 |
CN112738137A (zh) * | 2021-03-30 | 2021-04-30 | 深圳红途创程科技有限公司 | 数据采集和链路处理方法、装置、计算机设备及存储介质 |
CN112738137B (zh) * | 2021-03-30 | 2021-06-11 | 深圳红途创程科技有限公司 | 数据采集和链路处理方法、装置、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Koseleva et al. | Big data in building energy efficiency: understanding of big data and main challenges | |
CN102646129B (zh) | 一种主题相关的分布式网络爬虫系统 | |
CN103475687B (zh) | 用于下载网站数据的分布式方法和系统 | |
CN107193960B (zh) | 一种分布式爬虫系统及周期性增量抓取方法 | |
CN101329687B (zh) | 一种新闻网页定位方法 | |
CN102426610B (zh) | 微博搜索排名方法及微博搜索引擎 | |
CN104516982A (zh) | 一种基于Nutch的Web信息提取方法和系统 | |
CN102096705A (zh) | 一种文章采集的方法 | |
CN103970788A (zh) | 一种基于网页爬取的爬虫技术 | |
CN102724059A (zh) | 基于MapReduce的网站运行状态监控与异常检测 | |
CN102200979A (zh) | 一种分布式并行信息检索系统及其方法 | |
CN104077402A (zh) | 数据处理方法和数据处理系统 | |
CN107145556B (zh) | 通用的分布式采集系统 | |
CN103514205A (zh) | 海量数据处理方法和系统 | |
CN102982161A (zh) | 网页信息的获取方法和装置 | |
CN104182482B (zh) | 一种新闻列表页判断方法及筛选新闻列表页的方法 | |
CN102521232B (zh) | 一种互联网元数据的分布式采集处理系统及方法 | |
CN104182506A (zh) | 日志管理方法 | |
CN103927368A (zh) | 一种轻量级架构的利用流数据概念生成热力图的方法 | |
Pallickara et al. | Efficient metadata generation to enable interactive data discovery over large-scale scientific data collections | |
CN103631922A (zh) | 基于Hadoop集群的大规模Web信息提取方法及系统 | |
CN104598536B (zh) | 一种分布式网络信息结构化处理方法 | |
CN105207852A (zh) | 一种基于分布式网络数据定向采集的方法 | |
CN109783441A (zh) | 基于Bloom Filter的海量数据查询方法 | |
CN103902667A (zh) | 一种基于元搜索的网络信息采集器简单实现方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151230 |