CN107273498A - 舆情大数据处理方法 - Google Patents
舆情大数据处理方法 Download PDFInfo
- Publication number
- CN107273498A CN107273498A CN201710455962.XA CN201710455962A CN107273498A CN 107273498 A CN107273498 A CN 107273498A CN 201710455962 A CN201710455962 A CN 201710455962A CN 107273498 A CN107273498 A CN 107273498A
- Authority
- CN
- China
- Prior art keywords
- node
- crawl
- url
- control node
- crawls
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Abstract
本发明提供了一种舆情大数据处理方法,该方法包括:控制节点协调多个爬取节点的爬取事务;爬取节点分别进行网页爬取,将获取的舆情数据存储在云文件系统中。本发明提出了一种舆情大数据处理方法,实现了并行网页爬取,提高采集和存储效率,广泛适用于大规模的社交网络。
Description
技术领域
本发明涉及大数据,特别涉及一种舆情大数据处理方法。
背景技术
社交网络中用户是信息的发布者,用户如果对某方面的信息感兴趣,该用户需要做的是同发布这方面信息的用户建立社会网址,构建自己的社交网络,实时的相关信息就会通过社交网络传播到该用户那里。社交网络中传播的信息,例如,在微博中,用户的转发行为引发了微博信息在网络中传播,用于市场营销、广告投放和谣言控制等多个方面。由此可见,信息在社交网络中的传播对帮助用户获取信息起着至关重要的作用。现有技术中的信息传播跟踪方法通常只考虑了比较单一的影响信息传播的因素,方法中虚拟的参数通常是任意指定的,不具备预测信息传播的能力。此外,当给定一个社交网络后,对于如何在社交网络上选取一个指定规模的节点集合以达到影响力最大化的效果方面,已有方法只适用于小型网络,对于大规模的社交网络,只能得到近似的较优结果。
发明内容
为解决上述现有技术所存在的问题,本发明提出了一种舆情大数据处理方法,包括:
控制节点协调多个爬取节点的爬取事务;
爬取节点分别进行网页爬取,将获取的舆情数据存储在云文件系统中。
优选地,所述控制节点启动各个爬取节点、事务的分发、管理爬取节点状态、管理URL以及爬取节点。
优选地,所述控制节点根据自身的配置信息获取已部署爬取节点的数量,以远程登录的方式启动爬取节点。
优选地,所述控制节点初始化事务分发时,向各个爬取节点发送爬取事务,控制节点首先探测各个爬取节点的连通性;将物理上无法连通的主机的信息从数据库中删除,然后进入事务分发阶段;当爬取节点返回URL时,控制节点再给请求的爬取节点发送事务;爬取过程中对于从爬取的网页抽取的URL则返回给控制节点,由控制节点统一调度;控制节点以固定个数的URL不断向请求事务的爬取节点发送事务。
优选地,所述爬取节点启动后向控制节点发送一个就绪状态信息,表明该爬取节点已经做好准备,可以接受爬取事务;控制节点收到爬取节点的就绪信息后,生成一个初始事务,即封装待爬取的网页的URL,并以文件的形式发送到爬取节点某个特定的路径下;如果控制节点发现当前数据库中无数据而且系统中还有爬取节点在爬取,则向该爬取节点发送等待信息,爬取节点根据收到运行信息,到相应的路径下,装载待爬取URL到爬取队列,在当前爬取完之后继续爬取下一次事务;爬取节点若收到等待信息,爬完当前事务后,保持等待状态,直到控制节点将其唤醒;在爬取网页的过程中,抽取出的URL达到预定量后,封装成一个数据文件,爬取节点将其发送到控制节点的特定路径下,控制节点到指定路径下装载数据至数据库中;当爬取节点即将完成本次爬取事务的时候,同样向控制节点发送就绪状态信息。
本发明相比现有技术,具有以下优点:
本发明提出了一种舆情大数据处理方法,实现了并行网页爬取,提高采集和存储效率,广泛适用于大规模的社交网络。
附图说明
图1是根据本发明实施例的舆情大数据处理方法的流程图。
具体实施方式
下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描述。结合这样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权利要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本发明的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本发明。
本发明的一方面提供了一种舆情大数据处理方法。图1是根据本发明实施例的舆情大数据处理方法流程图。
分布式爬取整体架构包括爬取节点、控制节点以及云文件系统三部分。控制节点负责协调爬取节点之间的爬取,爬取节点负责爬取网页,爬取的网页存储在云文件系统中。控制节点启动各个爬取节点、事务的分发、管理爬取节点状态、管理URL以及爬取节点是否终止。控制节点根据自身的配置信息获取已部署多少个爬取节点,由控制节点远程登录的方式启动爬取节点;爬取节点启动后向控制节点发送一个就绪状态信息,表明该爬取节点已经做好准备,可以接受爬取事务了;控制节点收到爬取节点的就绪信息后,生成一个初始事务,即封装了一些待爬取的网页的URL,并以文件的形式发送到爬取节点某个特定的路径下。如果控制节点发现当前数据库中无数据而且系统中还有爬取节点在爬取,它就会向该爬取节点发送等待信息,爬取节点根据收到运行信息,到相应的路径下,装载待爬取URL到爬取队列,在当前爬取完之后继续爬取下一次事务。爬取节点若收到等待信息,爬完当前事务后,保持等待状态,直到控制节点将其唤醒;在爬取网页的过程中,抽取出的URL达到预定量后,封装成一个数据文件,爬取节点将其发送到控制节点的特定路径下,控制节点到指定路径下装载数据至数据库中;当爬取节点即将完成本次爬取事务的时候,同样向控制节点发送就绪状态信息。
控制节点包括状态管理器、数据装载器、过滤器、事务管理器、数据库。状态管理器负责判断爬取节点发送的状态类型,如果状态是数据爬取,则状态管理器将其提交数据装载器;如果是事务请求状态,则将其交给事务管理器。数据装载器到指定的路径下以文件的形式读取爬取节点发送的URL,然后将这些数据交给过滤器。过滤器对数据进行去重,将经过处理的数据存储至数据库中。数据库存储待爬取的URL以及爬取节点的管理信息。事务管理器生成、发送爬取事务以及爬取节点控制信息,并将爬取事务和控制信息发送给请求的爬取节点。
对于数据去重处理,通过MD5算法来生成散列函数:首先构造一个bit数组,大小为224,用于保存已经处理过URL的历史记录;构成散列函数构造分成两部分,即全局散列和局部散列,具体构造过程如下:获得一个关于URL的MD5值的字符串形式,将字符串转换成一个128位的byte值,并对224求余,使之映射到0~224的范围内;将这128位的MD5值去掉其中的高8位,剩下其余的120位;这120位每24位分成一组,形成五组。每一组值的取值范围为 再对这五组散列值进行如下转化,使它们映射到相应区间:前两个散列函数对224/3求余,映射区间为0~224/3;接下来的两个函数,同样对224/3求余,映射范围为而后分别加上224/3,使之映射区间为最后一个函数,同样对224/3求余,映射范围为0~224/3,而后将它的值加224/3,使之映射区间为224/3~224。
进行URL去重的过程为:首先初始化224的位数组,每个位置为0。当有URL输入时,计算该URL的散列值,得出一个关于当前URL的一个128位的字符串表示,将此字符串按上述散列过程分别得到全局散列值和局部散列值;依次检测所有散列值为是否都为1,如果有一个不为1,则通过该过滤器过滤。判别URL结束之后,将所有散列值对应的位置为1。
控制节点初始化事务分发时,向各个爬取节点发送爬取事务。控制节点首先探测各个爬取节点的连通性。将物理上无法连通的主机的信息从数据库中删除,然后进入事务分发阶段。当爬取节点返回URL时,控制节点再给请求的爬取节点发送事务。爬取过程中对于从爬取的网页抽取的URL则返回给控制节点,由控制节点统一调度。控制节点以固定个数的URL不断向请求事务的爬取节点发送事务。
爬取节点中的待爬取队列暂存本次控制节点发送的爬取事务,即待爬取的URL。预取单元从待爬取队列中获取一个URL,获取之后对该URL进行预处理,处理之后交给抓取单元。抓取单元模拟浏览器建立与待爬取站点的网址的连接,获取对应的网页,并将其交给抽取单元,然后将待爬取网站的域名地址进行缓存,用于后续爬取时直接使用域名地址缓存。通过URL散列函数的相关应用,将这些域名散列到域名地址的散列队列中,通过这些规则生成一个特定的编号,通过这些域名地址的解析过程,来获取索引的相关内容。解析这些信息成功后,将这些信息写入相关的数据库中进行存储,这些索引的内容通过相应的网页IP实现写入对应的数据库中,通过获取相关内容实现更新域名池信息,若该域名己经解析了相关的对应IP,通过对这些域名进行相应使用频率的加权,并且判断优先处理规则。通过实现权值相关的信息映射出相应的IP,并且通过这些具体信息的解析,实现这些域名的URL的排序,具体的解析信息通过相应的处理实现相应的关联与维护。这些域名在排序时,以线性指针链索引遍历所有存在域名的相关使用权值,需要改变相关的域名顺序时通过交换相关的域名指针信息,实现这些信息的域与权值域的排序。
抽取单元使用正则表达式,抽取符合预定算法类型的网址。经过抽取单元处理的网页接下来由索引单元处理,而抽取的网址则由后处理单元处理。索引单元将本地文件写入到本地磁盘的缓存路径。将每个网页写入到本地大文件中,在写完文件之后,将文件路径添加到指定的机构。后处理单元在发送前对URL进行过滤,滤除非文本类型的网页,即发送URL到云端。
在云平台环境下,通过MapReduce逐条解析出相应的待爬取URL,并且判断这些URL的相关合法性,并将这些合法的URL并且,通过去重处理,将这些信息更新到网页数据库中。使得数据库的爬取网址内容得到更新,将URL的集合实现格式化和过滤处理,排除非法与重复的URL,将这些URL下载并设定URL状态,按照算法将这些URL进行初始化分值;对URL进行合并,重复数据不再进行存储操作;将获取的相关URL存储在数据库,对原来存储在数据库中重复的执行替换操作,新的代替以前的URL。执行Map函数实现爬取时,将在文件的URL作为参数传入,通过与检索信息的匹配,确认爬取信息网页;接下来实现参数的格式化,根据正则表达式对一些特定的字符串进行识别和规格化。获取己经符合需求的URL,将这些URL的状态标示为爬取状态,然后实现爬取。然后通过Reduce将处理好的URL进行用旧URL替换新的URL操作。处理好的URL的集合作为一个整体参数,判断该URL是否存在,如果不存在这个URL信息则将该URL收集起来,最后输出相关URL信息。经过相应的Map和Reduce函数及算法的计算与处理后,就会得到个待爬取URL。
当输入了一个待爬取URL,对URL进行多线程的网页解析,多个线程循环下载网页的相关数据,通过这个URL解析相应的内容,并且将这些URL存储在相关队列中。对所有的队列实现加锁处理,能够避免这些URL访问冲突,或者重复获取这些URL,每一个线程在任意一个时间段只可以有一种线程锁。
在数据下载过程中,保存网页的元数据,包括下载时间、网页的URL以及所在主机的IP地址。在网页的尾部追加一个信息标签,标签内的文本即为该网页的元数据。爬取节点运行时,首先输入爬取节点获取的网页,用标签抓取模块抽取所有的标签,并将它们提交给网页结构向量生成器:同时,标签抓取模块将网页的标题标签和所有网址标签提交给网址相关性判断模块;网页结构向量生成器将生成的网页结构向量交给主题关联度计算模块。主题关联度计算模块结合主题结构抓取模块提供的网站的标准主题结构向量以及主题字典来判断该网页是否主题相关,并将网页关联度交给网址相关性判断模块处理,同时将主题相关网页输出。最后,根据标题标签、网页主题关联度以及网址锚文本的关联度来判断各个URL的主题关联度,将主题相关的网址输出。
主题结构抓取模块获取待抓网站的典型网页作为训练集。读取训练集中的网页,获取网页中的同时出现标签。初始化一个n维0向量,记为A,n为同时出现标签的数量,每个向量的维度代表一个标签出现的个数。依次读取训练集中的每个网页,抽取每个标签,在向量A中相应的维度位置处加上相应标签出现的次数,表示该网页贡献出相应标签的数量。此时的A向量中的各个维的值表示训练集中的相应标签的总数。接下来对每一维做除商操作,除训练集中的网页个数,从而得出一个标准向量B。B向量即为描述该网页结构的向量表示。然后主题结构抓取模块将结果向量B发给主题关联度计算模块。
主题关联度的计算由两部分组成,分别是网页内容关联度和结构关联度。首先计算网页结构关联度,如果网页结构关联度小于阈值r0,则确定该网页与主题不相关;如果大于r0,则认为该网页是主题相关的,在结构上主题相关的网页,等待判断内容关联度,如果出现关键词,则确定内容相关。综合这两部分得出该网页的整体主题关联度r:
r=a×rcon+b×rthm
rcon表示网页结构关联度,rthm表示网页内容关联度;a、b分别表示二者的权重。
其中xi为主题结构抓取模块中产生的标准主题向量,而yi为待检测网页的结构向量。rthm即是判定该网页中是否出现领域关键词,如果出现则为1,否则,则为0。
网址相关性计算模块实现过滤和生成网址。通过对URL标签进行打分,根据每个标签的得分情况来判断是否主题相关,进而滤除那些与主题无关的标签。生成网址具体包括从URL标签中抽取每个URL;判断每个URL的类型,如果是相对地址,则将其拼接成一个绝对地址。
综上所述,本发明提出了一种舆情大数据处理方法,实现了并行网页爬取,提高采集和存储效率,广泛适用于大规模的社交网络。
显然,本领域的技术人员应该理解,上述的本发明的各模块或各步骤可以用通用的计算系统来实现,它们可以集中在单个的计算系统上,或者分布在多个计算系统所组成的网络上,可选地,它们可以用计算系统可执行的程序代码来实现,从而,可以将它们存储在存储系统中由计算系统来执行。这样,本发明不限制于任何特定的硬件和软件结合。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。
Claims (5)
1.一种舆情大数据处理方法,用于在分布式数据采集架构中对网络舆情数据进行爬取,其特征在于,包括:
控制节点协调多个爬取节点的爬取事务;
爬取节点分别进行网页爬取,将获取的舆情数据存储在云文件系统中。
2.根据权利要求1所述的方法,其特征在于,所述控制节点启动各个爬取节点、事务的分发、管理爬取节点状态、管理URL以及爬取节点。
3.根据权利要求1所述的方法,其特征在于,所述控制节点根据自身的配置信息获取已部署爬取节点的数量,以远程登录的方式启动爬取节点。
4.根据权利要求1所述的方法,其特征在于,所述控制节点初始化事务分发时,向各个爬取节点发送爬取事务,控制节点首先探测各个爬取节点的连通性;将物理上无法连通的主机的信息从数据库中删除,然后进入事务分发阶段;当爬取节点返回URL时,控制节点再给请求的爬取节点发送事务;爬取过程中对于从爬取的网页抽取的URL则返回给控制节点,由控制节点统一调度;控制节点以固定个数的URL不断向请求事务的爬取节点发送事务。
5.根据权利要求1所述的方法,其特征在于,所述爬取节点启动后向控制节点发送一个就绪状态信息,表明该爬取节点已经做好准备,可以接受爬取事务;控制节点收到爬取节点的就绪信息后,生成一个初始事务,即封装待爬取的网页的URL,并以文件的形式发送到爬取节点某个特定的路径下;如果控制节点发现当前数据库中无数据而且系统中还有爬取节点在爬取,则向该爬取节点发送等待信息,爬取节点根据收到运行信息,到相应的路径下,装载待爬取URL到爬取队列,在当前爬取完之后继续爬取下一次事务;爬取节点若收到等待信息,爬完当前事务后,保持等待状态,直到控制节点将其唤醒;在爬取网页的过程中,抽取出的URL达到预定量后,封装成一个数据文件,爬取节点将其发送到控制节点的特定路径下,控制节点到指定路径下装载数据至数据库中;当爬取节点即将完成本次爬取事务的时候,同样向控制节点发送就绪状态信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710455962.XA CN107273498A (zh) | 2017-06-16 | 2017-06-16 | 舆情大数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710455962.XA CN107273498A (zh) | 2017-06-16 | 2017-06-16 | 舆情大数据处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107273498A true CN107273498A (zh) | 2017-10-20 |
Family
ID=60067710
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710455962.XA Pending CN107273498A (zh) | 2017-06-16 | 2017-06-16 | 舆情大数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107273498A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110737814A (zh) * | 2019-10-21 | 2020-01-31 | 软通动力信息技术有限公司 | 一种网站数据的爬取方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104899323A (zh) * | 2015-06-19 | 2015-09-09 | 成都国腾实业集团有限公司 | 一种用于idc有害信息监测平台的爬虫系统 |
US20160092572A1 (en) * | 2014-09-25 | 2016-03-31 | Oracle International Corporation | Semantic searches in a business intelligence system |
CN106503017A (zh) * | 2015-09-08 | 2017-03-15 | 摩贝(上海)生物科技有限公司 | 一种分布式爬虫系统任务抓取系统和方法 |
-
2017
- 2017-06-16 CN CN201710455962.XA patent/CN107273498A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160092572A1 (en) * | 2014-09-25 | 2016-03-31 | Oracle International Corporation | Semantic searches in a business intelligence system |
CN104899323A (zh) * | 2015-06-19 | 2015-09-09 | 成都国腾实业集团有限公司 | 一种用于idc有害信息监测平台的爬虫系统 |
CN106503017A (zh) * | 2015-09-08 | 2017-03-15 | 摩贝(上海)生物科技有限公司 | 一种分布式爬虫系统任务抓取系统和方法 |
Non-Patent Citations (3)
Title |
---|
刘小云: "网络爬虫技术在云平台上的研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
岳雨俭: "基于Hadoop分布式网络爬虫技术的研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
高景生: "一种面向主题的分布式爬虫系统的研究与实现", 《中国优秀硕士学位论文全文数据库·信息科技辑》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110737814A (zh) * | 2019-10-21 | 2020-01-31 | 软通动力信息技术有限公司 | 一种网站数据的爬取方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11316727B2 (en) | Method and system for clustering event messages and manage event-message clusters | |
Pacheco et al. | Uncovering coordinated networks on social media: methods and case studies | |
CN104850574B (zh) | 一种面向文本信息的敏感词过滤方法 | |
CN103488680B (zh) | 在数据库系统中计数项目的方法 | |
US10452992B2 (en) | Interactive interfaces for machine learning model evaluations | |
CN103914494B (zh) | 一种微博用户身份识别方法及系统 | |
CN103593336B (zh) | 一种基于语义分析的知识推送系统及方法 | |
CN105518658A (zh) | 用于将数据记录分组的设备、系统以及方法 | |
CN107247789A (zh) | 基于互联网的用户兴趣采集方法 | |
CN109684483A (zh) | 知识图谱的构建方法、装置、计算机设备及存储介质 | |
CN103617213B (zh) | 识别新闻网页属性特征的方法和系统 | |
CN106776929A (zh) | 一种信息检索的方法及装置 | |
CN109918554A (zh) | 网页数据爬取方法、装置、系统及计算机可读存储介质 | |
CN110362727A (zh) | 用于搜索系统的第三方搜索应用 | |
US20180060426A1 (en) | Systems and methods for issue management | |
CN104516910A (zh) | 在客户端服务器环境中推荐内容 | |
CN109543089A (zh) | 一种网络安全情报数据的分类方法、系统及相关装置 | |
CN105631007A (zh) | 一种行业技术信息搜集方法及系统 | |
CN107256275A (zh) | 路由查询结果 | |
CN107239563A (zh) | 舆情信息动态监控方法 | |
CN108319608A (zh) | 访问日志存储查询的方法、装置及系统 | |
CN104951566B (zh) | 一种关键词搜索排名确定方法及装置 | |
CN109977139A (zh) | 基于类结构化查询语句的数据处理方法和装置 | |
CN107273498A (zh) | 舆情大数据处理方法 | |
CN107943588A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171020 |