CN107291778B - 数据的收集方法及装置 - Google Patents

数据的收集方法及装置 Download PDF

Info

Publication number
CN107291778B
CN107291778B CN201610222416.7A CN201610222416A CN107291778B CN 107291778 B CN107291778 B CN 107291778B CN 201610222416 A CN201610222416 A CN 201610222416A CN 107291778 B CN107291778 B CN 107291778B
Authority
CN
China
Prior art keywords
webpage
content
text
acquired
memory
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.)
Active
Application number
CN201610222416.7A
Other languages
English (en)
Other versions
CN107291778A (zh
Inventor
彭建华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201610222416.7A priority Critical patent/CN107291778B/zh
Priority to PCT/CN2017/079881 priority patent/WO2017177872A1/zh
Publication of CN107291778A publication Critical patent/CN107291778A/zh
Application granted granted Critical
Publication of CN107291778B publication Critical patent/CN107291778B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种数据的收集方法及装置,其中,该方法包括:建立用于搜索待收集数据的关键字与对应包含关键字的网页地址的对应关系;循环获取对应关系中的网页地址;将获取到的网页地址传入线程进行爬取,并将爬取到的网页内容保存到内存中;通过预设方式获取内存中网页内容的文本内容,将获取到的文本内容保存到指定路径的文件中。通过本发明,解决了相关技术中对于水利舆情数据的收集的数据量过大,无用数据多,数据质量低的问题。

Description

数据的收集方法及装置
技术领域
本发明涉及互联网领域,具体而言,涉及一种数据的收集方法及装置。
背景技术
随着大数据及新媒体的快速发展,信息传播变得更加迅速、便捷,这就导致了信息管理的不确定、不可控。水污染、饮用水安全、水旱灾害等信息在新媒体时代被及时、快速传播,既对我们水环境进行了监督,也对我们及时发现水环境问题,规避潜在水风险提供了重要的渠道,水利热点舆情监测与应对,已经成为当前水利工作的重要部分。为此,水利部专门针对水利热点舆情进行了部署:成立专门机构、加大投入加大监测、编发舆情报告、更加注重分析。但是水利属于公益事业,现有实现技术难度高、资源投入大(计算机、网络资源),导致水利热点监测投入不足、监测手段少、信息上报不及时,致使水利部针对热点舆情的相关部署不能达到预期的效果。
由于舆情监测与分析的重要性,舆情在各个行业中都得到快速发展。文献《水利热点舆情监测与应对工作探讨》通过分析水利热点舆情监测与应对工作面临的形势要求和现状问题,借鉴行业内外科学经验,探索提出了具有可操作性的热点舆情监测与应对工作机制及保障措施;文献《水利工程舆情分析模型及指标体系设计》以水利工程舆情信息为主要研究对象,以马克思·H·博伊索特“信息空间理论”为理论依据,结合水利工程的社会特点,分析水利工程舆情信息分析指标体系。阐述了水利工程舆情信息在由编码、抽象、扩散三个维度构成的舆情信息空间的传播特性,分析了水利工程舆情信息在采邑、宗族、官僚制以及市场四个部落以及各个部落之间流动的特点,提取了舆情发布、舆情传播、舆情内容、舆情接收四大要素,并且以这四大要素为概念模型构建了水利工程舆情信息分析指标体系;专利《一种舆情信息展示系统及方法》公开了一种舆情信息展示系统及方法,涉及网络信息技术领域,所述系统包括:网页抓取模块,适于抓取当前网络中包含舆情信息的网页;网页分析模块,适于对所述网页进行分析,以获得所述网页的正文信息;地域识别模块,适于对所述正文信息进行地域识别,以获得所述正文信息的所属地域,并对具有相同所属地域的网页进行数量统计;展示模块,适于将所述数量统计的结果通过地图着色的方式进行展示;专利《一种网络舆情事件多维信息提取的方法及装置》提供了一种网络舆情事件多维信息提取的方法及装置,其中,所述方法包括:基于用户搜索行为从搜索日志中提取种子网页,采用所述种子网页构建网络舆情事件初始的主题;依据所述主题按照预设时间段分时获取特征网页;获取上一预设时间段用户关注度的分析数据、媒体关注度的分析数据以及用户态度的分析数据;获取当前预设时间段用户关注度的分析数据、媒体关注度的分析数据以及用户态度的分析数据;分别对比上一预设时间段与当前时间段用户关注度的分析数据,媒体关注度的分析数据以及用户态度的分析数据,获得网络舆情事件的趋势演化信息。发明用以分析舆论事件,提高舆论事件分析的准确度。
可见相关技术中,虽然提出了针对不同舆情数据的收集、分析、处理方法,但这些方法用于水利行业的舆情数据收集,技术实现复杂、性能相对较低,收集的数据量过大,无用数据多,数据质量低,导致后续数据分析、挖掘难度增加、分析与挖掘结果精度降低等缺陷。针对相关技术中的上述问题,目前尚未存在有效的解决方案。
发明内容
本发明提供了一种数据的收集方法及装置,以至少解决相关技术中对于水利舆情数据的收集的数据量过大,无用数据多,数据质量低的问题。
根据本发明的一个方面,提供了一种数据的收集方法,包括:建立用于搜索待收集数据的关键字与对应包含所述关键字的网页地址的对应关系;循环获取所述对应关系中的网页地址;将获取到的网页地址传入线程进行爬取,并将爬取到的网页内容保存到内存中;通过预设方式获取所述内存中网页内容的文本内容,将获取到的文本内容保存到指定路径的文件中。
进一步地,所述建立用于搜索待收集数据的关键字与对应包含所述关键字的网页地址的对应关系包括:预设一个或多个关键字,其中,所述关键字由一个或多个词组组成;通过搜索引擎循环读取所述关键字进行搜索;建立搜索结果的网页地址与搜索得到所述网页地址的关键字之间的对应关系。
进一步地,所述将获取到的网页地址传入线程进行爬取,并将爬取到的网页内容保存到内存中包括:将获取到的网页地址分别传入线程池中的线程;通过所述线程对所述网页地址中的网页内容进行爬取;将爬取到的网页内容保存到内存中。
进一步地,所述通过预设方式获取所述内存中网页内容的文本内容包括:通过预设方式将获取到的所述内存中的网页内容转化为dom实例;获取所述dom中的的根节点,以及所述根节点下的子节点、孙节点;判断获取到的每个节点是否包含文本内容;在判断结果为是时,获取节点中的文本,其中,将获取的新文本追加到在所述新文本之前获取到的文本的尾部。
进一步地,所述待收集的数据为水利舆情数据。
根据本发明的另一个方面,提供了一种数据的收集装置,包括:建立模块,用于建立用于搜索待收集数据的关键字与对应包含所述关键字的网页地址的对应关系;获取模块,用于循环获取所述对应关系中的网页地址;第一处理模块,用于将获取到的网页地址传入线程进行爬取,并将爬取到的网页内容保存到内存中;第二处理模块,用于通过预设方式获取所述内存中网页内容的文本内容,将获取到的文本内容保存到指定路径的文件中。
进一步地,所述建立模块包括:预设单元,用于预设一个或多个关键字,其中,所述关键字由一个或多个词组组成;搜索单元,用于通过搜索引擎循环读取所述关键字进行搜索;建立单元,用于建立搜索结果的网页地址与搜索得到所述网页地址的关键字之间的对应关系。
进一步地,所述第一处理模块包括:传入单元,用于将获取到的网页地址分别传入线程池中的线程;爬取单元,用于通过所述线程对所述网页地址中的网页内容进行爬取;保存单元,用于将爬取到的网页内容保存到内存中。
进一步地,所述第二处理模块包括:转化单元,用于通过预设方式将获取到的所述内存中的网页内容转化为dom实例;第一获取单元,用于获取所述dom中的的根节点,以及所述根节点下的子节点、孙节点;判断单元,用于判断获取到的每个节点是否包含文本内容;第二获取单元,用于在判断结果为是时,获取节点中的文本,其中,将获取的新文本追加到在所述新文本之前获取到的文本的尾部。
进一步地,所述待收集的数据为水利舆情数据。
通过本发明,采用建立用于搜索待收集数据的关键字与对应包含关键字的网页地址的对应关系,通过该对应关系获取该网页地址,进而对该网页地址传入线程后进行爬取,保存爬取的网页内容,通过预设方式得到该网页内容中的文本内容,可见通过关键字与网页的对应关系使得数据的收集更加有针对性,而将获取到的网页地址传入线程进行爬取,得到最终需要网页内容使得数据的收集更加快速且有效,从而解决了相关技术中对于水利舆情数据的收集的数据量过大,无用数据多,数据质量低的问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的数据的收集方法的流程图;
图2是根据本发明实施例的数据的收集装置的结构框图;
图3是根据本发明实施例的数据的收集装置的可选结构框图一;
图4是根据本发明实施例的数据的收集装置的可选结构框图二;
图5是根据本发明实施例的数据的收集装置的可选结构框图三;
图6是根据本发明可选实施例的水利舆情数据收集系统的结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
在本实施例中提供了一种数据的收集方法,图1是根据本发明实施例的数据的收集方法的流程图,如图1所示,该流程包括如下步骤:
步骤S102:建立用于搜索待收集数据的关键字与对应包含关键字的网页地址的对应关系;
步骤S104:循环获取对应关系中的网页地址;
步骤S106:将获取到的网页地址传入线程进行爬取,并将爬取到的网页内容保存到内存中;
步骤S108:通过预设方式获取内存中网页内容的文本内容,将获取到的文本内容保存到指定路径的文件中。
通过本实施例的上述步骤S102至步骤S108,采用建立用于搜索待收集数据的关键字与对应包含关键字的网页地址的对应关系,通过该对应关系获取该网页地址,进而对该网页地址传入线程后进行爬取,保存爬取的网页内容,通过预设方式得到该网页内容中的文本内容,可见通过关键字与网页的对应关系使得数据的收集更加有针对性,而将获取到的网页地址传入线程进行爬取,得到最终需要网页内容使得数据的收集更加快速且有效,从而解决了相关技术中对于水利舆情数据的收集的数据量过大,无用数据多,数据质量低的问题。
在本实施例的可选实施方式中,对于本实施例步骤S102中涉及到的建立用于搜索待收集数据的关键字与对应包含关键字的网页地址的对应关系的方式,可以通过如下方式来实现:
步骤S102-1:预设一个或多个关键字,其中,关键字由一个或多个词组组成;
步骤S102-2:通过搜索引擎循环读取关键字进行搜索;
步骤S102-3:建立搜索结果的网页地址与搜索得到网页地址的关键字之间的对应关系。
对于上述步骤S102-1至步骤S102-3中涉及到的关键字由一个或多个词组组成,例如可以是:水利、洪水、水利and洪水、水利or洪水就是4个关键字;也就是说,事先可以通过预设关键字进行搜索得到相应的网页地址,进而建立两者之间的对应关系。
对于该步骤,在具体应用场景中可以是,利用casperjs打开www.baidu.com网页,获取到搜索文本框与搜索按钮的实例,然后进行如下操作:a)从文件中读取关键词;b)把关键词放入搜索文本框的实例中;c)调用搜索按钮的click事件进行搜索;d)循环执行a)-c),能够对所有的关键词进行搜索。
在本实施例的另一个可选实施方式中,对于本实施例步骤S104中涉及到的将获取到的网页地址传入线程进行爬取,并将爬取到的网页内容保存到内存中的方式,可以通过如下方式来实现:
步骤S106-1:将获取到的网页地址分别传入线程池中的线程;
步骤S106-2:通过线程对网页地址中的网页内容进行爬取;
步骤S106-3:将爬取到的网页内容保存到内存中。
如上述对应关系存放在文件中,则对于该步骤S106-1至步骤S106-3,首先读取文件,从文件中循环获取网页URL,把URL传入线程池中的线程,线程调度爬虫单元,可以使用casperjs+phantomjs实现爬虫功能;在每个线程中,使用casperjs+phantomjs技术,把具体网页内容抓取到内存中。
在本实施例的再一个可选实施方式中,对于步骤S108通过预设方式获取内存中网页内容的文本内容的方式,可以通过如下方式来实现:
步骤S108-1:通过预设方式将获取到的内存中的网页内容转化为dom实例;
步骤S108-2:获取dom中的的根节点,以及根节点下的子节点、孙节点;
步骤S108-3:判断获取到的每个节点是否包含文本内容;
步骤S108-4:在判断结果为是时,获取节点中的文本,其中,将获取的新文本追加到在新文本之前获取到的文本的尾部。
需要说明的是,本实施例中涉及到的待收集的数据为水利舆情数据。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种数据的收集装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图2是根据本发明实施例的数据的收集装置的结构框图,如图2所示,该装置包括:建立模块22,用于建立用于搜索待收集数据的关键字与对应包含关键字的网页地址的对应关系;获取模块24,与建立模块22耦合连接,用于循环获取对应关系中的网页地址;第一处理模块26,与获取模块24耦合连接,用于将获取到的网页地址传入线程进行爬取,并将爬取到的网页内容保存到内存中;第二处理模块28,与第一处理模块26耦合连接,用于通过预设方式获取内存中网页内容的文本内容,将获取到的文本内容保存到指定路径的文件中。
图3是根据本发明实施例的数据的收集装置的可选结构框图一,如图3所示,该建立模块22包括:预设单元32,用于预设一个或多个关键字,其中,关键字由一个或多个词组组成;搜索单元,用于通过搜索引擎循环读取关键字进行搜索;建立单元34,与预设单元32耦合连接,用于建立搜索结果的网页地址与搜索得到网页地址的关键字之间的对应关系。
图4是根据本发明实施例的数据的收集装置的可选结构框图二,如图4所示,该第一处理模块26包括:传入单元42,用于将获取到的网页地址分别传入线程池中的线程;爬取单元,用于通过线程对网页地址中的网页内容进行爬取;保存单元44,与传入单元42耦合连接,用于将爬取到的网页内容保存到内存中。
图5是根据本发明实施例的数据的收集装置的可选结构框图三,如图5所示,该第二处理模块28包括:转化单元52,用于通过预设方式将获取到的内存中的网页内容转化为dom实例;第一获取单元54,与转化单元52耦合连接,用于获取dom中的的根节点,以及根节点下的子节点、孙节点;判断单元56,与第一获取单元54耦合连接,用于判断获取到的每个节点是否包含文本内容;第二获取单元58,与判断单元56耦合连接,用于在判断结果为是时,获取节点中的文本,其中,将获取的新文本追加到在新文本之前获取到的文本的尾部。
可选地,本实施例中涉及到的待收集的数据为水利舆情数据。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述模块分别位于多个处理器中。
下面结合本发明的可选实施例对本发明进行举例说明;
本可选实施例提供了一种水利舆情数据收集方法和系统,本可选实施例提供了如下公式:
提供舆情信息关键字列表,构建关键字与舆情网站地址的对应关系,构建逻辑可以通过公式(1)表示:
f(keys)=KeyMapAddress(keys) (1)
其中,keys是舆情关键字列表,函数f(keys)返回值是关键字与舆情网页地址的对应关系。
根据公式(1)获得的关键字与舆情网页地址的对应信息,获取每个网页内容,把网页内容进行提取构建舆情文本,实现逻辑:获取网页的根节点,循环浏览根节点下的子节点,如果子节点包含文本信息,则提取这个子节点的文本,把子节点内容追加到前面的文本生成新的文本。提取网页节点文本如公式(2):
Figure BDA0000962623210000061
舆情文本内容由公式(3)构成:
Figure BDA0000962623210000062
依据公式(1)、(2)、(3),构建舆情文本。
基于上述公式,本可选实施例采用的方式可以是:
首先,利用公式(1)的原理,通过配置方式提供水利舆情关键字,使用爬虫技术实现关键字爬取来建立关键字与对应包含关键字的网页地址(URL),具体实现方法为:利用casperjs与phantomjs,打开搜索网页(百度、google、搜搜等),循环读取关键字,通过程序把地址自动填到搜索网页的搜索文本框,并触发搜索按钮进行搜索,解析搜索结果页面内容,获取每条结果的链接地址(URL),把链接地址与关键字的对应关系放入到内存、数据库或文件中。
其次,通过水利舆情数据收集系统主框架循环读取URL,分布式调用,并行执行具体爬虫模块。具体实现方法为:主框架开启线程池,线程池中的线程调度、执行爬虫单元,假设1步骤的结果存放在文件中,主框架读取文件,从文件中循环获取网页URL,把URL传入线程池中的线程,线程调度爬虫单元,其中可以使用casperjs+phantomjs实现爬虫功能;
然后,爬取网页到内存。具体实现方式为:每个线程使用casperjs+phantomjs技术,把具体网页内容抓取到内存中;
最后,利用公式(2)、(3)获取网页内容。具体实现方式为:利用公式(2)、(3),网页内容转化为dom实例,获取dom的根节点,循环获取每个子节点并判断每个节点是否是包含文本内容,如果包含文本内容,则获取该节点的文本,把获取的新文本追加到前面获取文本的尾部;以及,利用归并模块对各个爬虫模块的结果进行归并,归并结果写入到指定路径的文件中。具体实现方式为:线程池中的每个线程都有对应URL的文本内容输出,合并模块接收每个线程的输出结果,以关键字为索引,把同一个关键字的结果写入到同一文件中。
此外,本可选实施例提供的水利舆情数据收集系统,图6是根据本发明可选实施例的水利舆情数据收集系统的结构示意图,如图6所示,该收集系统包括:
A.依据公式(1),构建舆情关键字与包含关键字网页地址的映像关系;
B.并行调度框架;
C.依据公式(2)、(3),爬取网页并解析网页内容;
D.以水利舆情关键字为索引对线程池中线程的输出结果进行合并,合并结果写入到文件。
本可选实施例提供的水利舆情数据收集方法包括以下步骤:
步骤S202:分析整理水利舆情关键字;
步骤S204:把关键字编写到舆情关键字配置文件中;
步骤S206:使用爬虫技术实现关键字爬取来建立关键字与对应包含关键字的网页地址(URL);
其中,在具体应用场景中可以是:利用casperjs与phantomjs,打开搜索网页(百度、google、搜搜等),循环读取关键字,通过程序把地址自动填到搜索网页的文本搜索框,并触发搜索按钮进行搜索,解析搜索结果页面内容,获取每条搜索结果的链接地址,把链接地址与关键字的对应关系放入到内存、数据库或文件中。
步骤S208:通过水利舆情数据收集系统主框架循环读取URL,分布式调用,并行执行具体爬虫功能模块。
其中,在具体应用场景中可以是:主框架开启线程池,线程池中的线程调度、执行爬虫单元实体,假设第三部步骤的结果存放在文件中,主框架读取文件,从文件中循环获取网页URL,把URL传入线程池中的线程,线程调度爬虫单元,其中,爬虫功能可以使用casperjs+phantomjs实现;
步骤S210:爬取网页到内存。
其中,在具体应用场景中可以是:每个线程使用casperjs+phantomjs技术,把具体网页内容抓取到内存中;
步骤S212:利用公式(2)、(3)获取网页内容。
其中,在具体应用场景中可以是:利用公式(2)、(3),把网页内容转化为dom实例,获取dom的根节点,循环获取每个子节点并判断每个节点是否包含文本内容,如果包含文本内容,则获取该节点的文本,把获取的新文本追加到前面获取文本的尾部。
步骤S214:利用归并模块对各个爬虫实体的输出结果进行归并,归并结果写入到指定路径的文件中。
其中,在具体应用场景中可以是:线程池中的每个线程都有对应URL的文本内容输出,合并模块接收每个线程的结果输出,以关键字为索引,把同一个关键字的结果写入到同一文件中。
采用本可选实施例的方法和系统,解决了相关技术中存在的实现水利舆情数据收集技术难度高且技术实现复杂、水利舆情数据收集缺乏重点,收集数据量大,无用数据多,数据质量低、系统性能低的问题。
下面结合具体实施例对本可选实施例的实施方式作进一步的描述,该具体实施例的方法步骤包括:
步骤S302:分析整理水利舆情关键字,关键字可以是单独的关键字以及关键字的关系组合,例如:水利、洪水、水利and洪水、水利or洪水就是4个关键字;
步骤S304:把关键字编写到舆情关键字配置文件中。
例如,方式一:配置文件格式为文本文件格式,一个关键字占用一行;
方式二:配置文件使用xml格式,一个关键字就是一个XML的节点。
步骤S306:使用爬虫技术实现关键字爬取来建立关键字与对应包含关键字的网页地址(URL),具体实现方法为:使用casperjs与phantomjs技术。
方式一:利用casperjs打开www.baidu.com网页,获取到搜索文本框与搜索按钮的实例,然后进行如下操作:
a)从文件中读取关键词;
b)把关键词放入搜索文本框的实例中;
c)调用搜索按钮的click事件进行搜索;
d)循环执行a)-c),能够对所有的关键词进行搜索。
方式二:利用casperjs打开www.sogou.com网页,获取到搜索文本框与搜狗搜索按钮的实例,然后进行如下操作:
a)从文件中读取关键词;
b)把关键词放入搜索文本框的实例中;
c)调用搜狗搜索按钮的click事件进行搜索;
d)循环执行a)-c),能够对所有的关键词进行搜索;
循环读取关键字,通过实施例一与实施例二,对水利关键字进行搜索,使用casperjs或js解析搜索结果页面内容,获取每条结果的链接地址,把链接地址与关键字的对应关系放入到内存、数据库或文件中。
步骤S308:主框架开启线程池,线程池中的线程调度、执行爬虫单元实体;
其中,例如步骤S306的结果存放在文件中,主框架读取文件,从文件中循环获取网页URL,把URL传入线程池中的线程,线程调度爬虫单元,可以使用casperjs+phantomjs实现爬虫功能;
步骤S310:在每个线程中,使用casperjs+phantomjs技术,把具体网页内容抓取到内存中;
步骤S312:利用上述公式(2)、(3),把网页内容转化为dom实例,获取dom的根节点,循环、递归获取根节点下的子、孙节点并判断每个节点是否包含文本内容,如果包含文本内容,则获取该节点的文本,把获取的新文本追加到前面获取文本的尾部。
步骤S314:利用归并模块对各个爬虫实体的输出结果进行归并,归并结果写入到指定路径的文件中。具体实现方式为:线程池中的每个线程都有对应URL的文本内容输出,合并模块接收每个线程的结果输出,以关键字为索引,把同一个关键字的结果写入到同一文件中。
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
步骤S1:建立用于搜索待收集数据的关键字与对应包含关键字的网页地址的对应关系;
步骤S2:循环获取对应关系中的网页地址;
步骤S3:将获取到的网页地址传入线程进行爬取,并将爬取到的网页内容保存到内存中;
步骤S4:通过预设方式获取内存中网页内容的文本内容,将获取到的文本内容保存到指定路径的文件中
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种数据的收集方法,其特征在于,包括:
建立用于搜索待收集数据的关键字与对应包含所述关键字的网页地址的对应关系;
循环获取所述对应关系中的网页地址;
将获取到的网页地址传入多个线程并行进行爬取,并将爬取到的网页内容保存到内存中;
通过预设方式获取所述内存中网页内容的文本内容,将获取到的文本内容保存到指定路径的文件中;
其中,所述通过预设方式获取所述内存中网页内容的文本内容,将获取到的文本内容保存到指定路径的文件中,包括:
通过预设方式获取所述内存中由所述多个线程中各个线程所分别爬取的网页内容的文本内容,将获取到的所述各个线程输出的文本内容进行合并,并以所述关键字为索引,将同一个关键字所对应的文本内容保存到指定路径的同一个文件中。
2.根据权利要求1所述的方法,其特征在于,所述建立用于搜索待收集数据的关键字与对应包含所述关键字的网页地址的对应关系包括:
预设一个或多个关键字,其中,所述关键字由一个或多个词组组成;
通过搜索引擎循环读取所述关键字进行搜索;
建立搜索结果的网页地址与搜索得到所述网页地址的关键字之间的对应关系。
3.根据权利要求1所述的方法,其特征在于,所述将获取到的网页地址传入线程进行爬取,并将爬取到的网页内容保存到内存中包括:
将获取到的网页地址分别传入线程池中的线程;
通过所述线程对所述网页地址中的网页内容进行爬取;
将爬取到的网页内容保存到内存中。
4.根据权利要求1所述的方法,其特征在于,所述通过预设方式获取所述内存中网页内容的文本内容包括:
通过预设方式将获取到的所述内存中的网页内容转化为dom实例;
获取所述dom中的根节点,以及所述根节点下的子节点、孙节点;
判断获取到的每个节点是否包含文本内容;
在判断结果为是时,获取节点中的文本,其中,将获取的新文本追加到在所述新文本之前获取到的文本的尾部。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述待收集的数据为水利舆情数据。
6.一种数据的收集装置,其特征在于,包括:
建立模块,用于建立用于搜索待收集数据的关键字与对应包含所述关键字的网页地址的对应关系;
获取模块,用于循环获取所述对应关系中的网页地址;
第一处理模块,用于将获取到的网页地址传入多个线程并行进行爬取,并将爬取到的网页内容保存到内存中;
第二处理模块,用于通过预设方式获取所述内存中网页内容的文本内容,将获取到的文本内容保存到指定路径的文件中;
其中,所述第二处理模块用于通过以下方式将获取到的所述文本内容保存到所述指定路径的文件中:
通过预设方式获取所述内存中由所述多个线程中各个线程所分别爬取的网页内容的文本内容,将获取到的所述各个线程输出的文本内容进行合并,并以所述关键字为索引,将同一个关键字所对应的文本内容保存到指定路径的同一个文件中。
7.根据权利要求6所述的装置,其特征在于,所述建立模块包括:
预设单元,用于预设一个或多个关键字,其中,所述关键字由一个或多个词组组成;
搜索单元,用于通过搜索引擎循环读取所述关键字进行搜索;
建立单元,用于建立搜索结果的网页地址与搜索得到所述网页地址的关键字之间的对应关系。
8.根据权利要求6所述的装置,其特征在于,所述第一处理模块包括:
传入单元,用于将获取到的网页地址分别传入线程池中的线程;
爬取单元,用于通过所述线程对所述网页地址中的网页内容进行爬取;
保存单元,用于将爬取到的网页内容保存到内存中。
9.根据权利要求6所述的装置,其特征在于,所述第二处理模块包括:
转化单元,用于通过预设方式将获取到的所述内存中的网页内容转化为dom实例;
第一获取单元,用于获取所述dom中的根节点,以及所述根节点下的子节点、孙节点;
判断单元,用于判断获取到的每个节点是否包含文本内容;
第二获取单元,用于在判断结果为是时,获取节点中的文本,其中,将获取的新文本追加到在所述新文本之前获取到的文本的尾部。
10.根据权利要求6至9任一项所述的装置,其特征在于,所述待收集的数据为水利舆情数据。
CN201610222416.7A 2016-04-11 2016-04-11 数据的收集方法及装置 Active CN107291778B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610222416.7A CN107291778B (zh) 2016-04-11 2016-04-11 数据的收集方法及装置
PCT/CN2017/079881 WO2017177872A1 (zh) 2016-04-11 2017-04-10 数据的收集方法及装置、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610222416.7A CN107291778B (zh) 2016-04-11 2016-04-11 数据的收集方法及装置

Publications (2)

Publication Number Publication Date
CN107291778A CN107291778A (zh) 2017-10-24
CN107291778B true CN107291778B (zh) 2023-05-30

Family

ID=60042322

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610222416.7A Active CN107291778B (zh) 2016-04-11 2016-04-11 数据的收集方法及装置

Country Status (2)

Country Link
CN (1) CN107291778B (zh)
WO (1) WO2017177872A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109361713A (zh) * 2018-12-17 2019-02-19 深信服科技股份有限公司 互联网风险监控方法、装置、设备及存储介质
CN109766488B (zh) * 2019-01-16 2022-09-16 南京工业职业技术学院 一种基于Scrapy的数据采集方法
CN112749314A (zh) * 2020-12-23 2021-05-04 民生科技有限责任公司 一种精准高效的目标舆情智能监控系统及方法
CN113051455B (zh) * 2021-03-31 2022-04-26 合肥供水集团有限公司 一种基于网络文本数据的水务舆情识别方法
CN113094623B (zh) * 2021-04-23 2023-10-10 中南大学 舆情云平台接入的舆情系统资源配置的优化方法及子系统
CN113609297A (zh) * 2021-08-23 2021-11-05 南京擎盾信息科技有限公司 用于法院行业的舆情监控方法和装置
CN113722572B (zh) * 2021-10-11 2024-03-29 上海易路软件有限公司 一种分布式深度爬取的方法、装置及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102930059A (zh) * 2012-11-26 2013-02-13 电子科技大学 一种聚焦爬虫的设计方法
CN103853760A (zh) * 2012-12-03 2014-06-11 中国移动通信集团公司 一种网页正文内容提取方法和装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100306045A1 (en) * 2009-06-01 2010-12-02 Click Group, Inc. System and method for keyword discovery from paid inclusion data for search engine marketing
WO2011150340A2 (en) * 2010-05-27 2011-12-01 Iconix, Inc. Method and system for enhancing search results with payment processing information
US20130212100A1 (en) * 2012-01-23 2013-08-15 Google Inc. Estimating rate of change of documents
US20160055243A1 (en) * 2014-08-22 2016-02-25 Ut Battelle, Llc Web crawler for acquiring content
CN104951512A (zh) * 2015-05-27 2015-09-30 中国科学院信息工程研究所 一种基于互联网的舆情数据采集方法及系统
CN104951539B (zh) * 2015-06-19 2017-12-22 成都艾尔普科技有限责任公司 互联网数据中心有害信息监测系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102930059A (zh) * 2012-11-26 2013-02-13 电子科技大学 一种聚焦爬虫的设计方法
CN103853760A (zh) * 2012-12-03 2014-06-11 中国移动通信集团公司 一种网页正文内容提取方法和装置

Also Published As

Publication number Publication date
CN107291778A (zh) 2017-10-24
WO2017177872A1 (zh) 2017-10-19

Similar Documents

Publication Publication Date Title
CN107291778B (zh) 数据的收集方法及装置
CN107451149B (zh) 流量数据查询任务的监控方法及其装置
CN106021583B (zh) 页面流量数据的统计方法及其系统
CN110232126B (zh) 热点挖掘方法及服务器和计算机可读存储介质
Rousseau A view on big data and its relation to Informetrics
El Abdouli et al. Sentiment analysis of moroccan tweets using naive bayes algorithm
CN109272436B (zh) 政策信息管理系统
CN108595466B (zh) 一种互联网信息过滤以及互联网用户信息和网帖结构分析方法
CN113704420A (zh) 文本中的角色识别方法、装置、电子设备及存储介质
CN116127047B (zh) 企业信息库的建立方法与装置
CN116521729A (zh) 一种基于Elasticsearch的信息分类搜索方法及装置
JP2003223390A (ja) データ抽出・構造変換処理プログラム、コンテンツ生成処理プログラム、データ抽出・構造変換処理プログラム記録媒体、コンテンツ生成処理プログラム記録媒体、およびコンテンツ再構築処理システム
Brown et al. ILAS: Intrinsic landscape assessment system for landscape design and planning in the national capital region
Zhou et al. A distributed text mining system for online web textual data analysis
Passant et al. Enhancing enterprise 2.0 ecosystems using semantic web and linked data technologies: The SemSLATES approach
Chen et al. Open Taiwan Government data recommendation platform using DBpedia and Semantic Web based on cloud computing
CN109408704B (zh) 基金数据关联方法、系统、计算机设备和存储介质
KR20220093671A (ko) Ai 기반의 소셜 네트워크 서비스 분석 장치
CN109522466A (zh) 一种分布式爬虫系统
McTaggart Analysis and implementation of software tools to support research in crisis informatics
Kaur et al. Research on the application of web mining technique based on XML for unstructured web data using LINQ
KR20130118046A (ko) Sns를 통한 과학기술정보 검색 시스템 및 방법
Samah et al. TF-IDF and Data Visualization For Syafie Madhhab Hadith Scriptures Authenticity
CN117634894B (zh) 生态环境风险评估方法、装置、电子设备及存储介质
CN108804620B (zh) 互联网数据采集方法、系统及计算机终端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant