CN108153741A - 基于多语言高效数据采集方法、计算机程序 - Google Patents

基于多语言高效数据采集方法、计算机程序 Download PDF

Info

Publication number
CN108153741A
CN108153741A CN201810028948.6A CN201810028948A CN108153741A CN 108153741 A CN108153741 A CN 108153741A CN 201810028948 A CN201810028948 A CN 201810028948A CN 108153741 A CN108153741 A CN 108153741A
Authority
CN
China
Prior art keywords
news
engine
multilingual
queue
language
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.)
Granted
Application number
CN201810028948.6A
Other languages
English (en)
Other versions
CN108153741B (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.)
Chinese Translation Language Through Polytron Technologies Inc
Original Assignee
Chinese Translation Language Through Polytron Technologies Inc
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 Chinese Translation Language Through Polytron Technologies Inc filed Critical Chinese Translation Language Through Polytron Technologies Inc
Priority to CN201810028948.6A priority Critical patent/CN108153741B/zh
Publication of CN108153741A publication Critical patent/CN108153741A/zh
Application granted granted Critical
Publication of CN108153741B publication Critical patent/CN108153741B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明属于计算机软件技术领域,公开了一种基于多语言高效数据采集方法、计算机程序,包括:关键字录入;识别输入语言类型,对文本多语言翻译;对多语言关键字分发;根据各子系统特定性能获取调度服务器任务,调用相关引擎进行业务爬取;网页分成新闻内容页,新闻列表页,过滤无效信息;新闻页面直接对链接获取新闻信息;新闻列表页,启用二级爬虫子系统递归,页面二次分析,获取新闻列表页,获取新闻页面,获取新闻;获取新闻内容去重;合法数据的数据结构化存储。本发明通过搜索引擎实现快速新闻采集功能,实现系统多语言自动采集;快速去重;实现快速负载均衡,并支持动态加载移除采集引擎;降低ip消耗,提高采集效率。

Description

基于多语言高效数据采集方法、计算机程序
技术领域
本发明属于计算机软件技术领域,尤其涉及一种基于多语言高效数据采集方法、计算机程序。
背景技术
互联网数据采集需求越来越大,采集系统的高效和精确正在成为采集系统追求的目标。目前众多采集系统采用爬虫系统对网站数据进行直接采集。国内,国外采集多采用多套系统部署采集,采集方式采用通用采集或者模版化采集,对新闻类网站等进行数据采集。多套系统的部署增加了采购和运维成本,也造成系统复杂,很难对现有资源进行统一调配。不同网站内容重复率高,采集信息浪费严重。通用采集方式效率虽然高,但是错误率相对会更高,特别对于一些中小地方网站采集错误率会更大。模版化人工标注采集模式,准确率高,但是需要大量人工对每个网站进行人工定义规则,人工成本高。传统新闻采集系统针对各个新闻网站进行配置管理,针对境内外网站要做定向匹配,例如通过正则表达式进行精确匹配,针对网站二级域名或者栏目进行配置采集,传统采集方式需要花费大量的人力成本,系统部署和维护周期漫长。根据现有系统,采集全球30万新闻站点,维护站点成本超过300人月,服务器超过50台。现有的采集系统目前大部分设计为对新闻网站全量或者增量采集,客观性采集信息不全面,无法实现对内容的定向采集,需要占用大量的带宽和存储空间。此外不能对其他语言进行采集,随着中国走向国际化,对不同语言的采集也是迫切需求。传统人工匹配方式,很难实现大量全语种采集,一方面各语种人才难得,此外小语种人才很难有计算机基础实现人工配置。针对海外不同语言的采集,目前国内还是以中/英文为主,新闻采集没有涉及到海外多语言新闻的采集。针对海外葡萄牙,西班牙等多种语言(目前32种语言,可扩充)进行。针对内容采集重复和去重方式,传统方式通过新闻全文检索/内容指纹等方式对比进行对比判断重复,需要把内容全文放入内存,消耗大量内存和cpu,特别是大数量采集,对服务器资源消耗更大。通过url进行快速检索,可以降低对服务器的消耗。
综上所述,现有技术存在的问题是:现有的数据采集方法存在增加采购和运维成本,造成系统复杂,不同网站内容重复率高,采集信息浪费严重,错误率高,系统部署和维护周期漫长,对服务器资源消耗大。现有采集系统是针对不同采集内容,专门建立专属的采集系统,每增加一类采集内容,就需要单独开发部署一套新的采集系统。采集内容的不同,对采集软件的要求,能力,规模都有不同要求,这也是技术本身的制约,对不同采集类内容开发不同的采集系统。例如新闻资讯,一般是通过首页—列表页—内容页(多页),论坛内容,一般是需要注册用户登录,采集每个主题发帖,回复帖等,区别很大,再加上不同系统对反采集要求,数据结构化要求,特别是当采集量要求比较庞大时无法通过单一系统完成多重复杂任务。
发明内容
针对现有技术存在的问题,本发明提供了一种基于多语言高效数据采集方法、计算机程序。
本发明是这样实现的,一种基于多语言高效数据采集方法,所述基于多语言高效数据采集方法包括:
(1)关键字录入;
(2)识别输入语言类型,对文本多语言翻译;
(3)对多语言关键字分发;
(4)根据各子系统特定性能获取调度服务器任务,调用相关引擎进行业务爬取;
(5)网页分成新闻内容页,新闻列表页,过滤无效信息;
(6)新闻页面直接对链接获取新闻信息;
(7)新闻列表页,启用二级爬虫子系统递归,页面二次分析,获取新闻列表页,获取新闻页面,获取新闻;
(8)获取新闻内容去重;
(9)合法数据的数据结构化存储。
进一步,所述识别输入语言类型,对文本多语言翻译具体包括:
(1)通过字符集判断输入语言版本;
(2)通过翻译引擎对录入语言进行翻译;
1)通过判定的输入语言版本,通过管道传输给机器翻译引擎,返回关键字集合记录集合,每个记录集合包含语言种类和翻译的目标词汇;
2)如果记录集合为空,相应翻译出现异常。
进一步,所述对多语言关键字分发具体包括:
(1)业务调度任务服务接收爬取业务,加入任务队列;
(2)根据语言版本,调度任务根据策略把任务分配;
(3)中文关键字分配给支持中文的搜索引擎,英文分配给支持英文引擎服务器日文分配goo。
进一步,所述获取新闻内容去重具体包括:
(1)提取将要采集新闻的url;
(2)对新闻url的hash编码;
1)对同一个网站不同url爬取内容分散到不同的服务器,固定一个静态变量a初始值为1;
2)建立新变量W,通过对网站的url加上变量a,W=hash(url)+a;
3)a=a+1,如果a超过阈值L,则a=a mod(L);
(3)根据采集引擎个数,对hash编码W根据存活个数取余,根据余数分配到相应的采集引擎;
1)向分发服务器发出alive信号,分发服务器动态加载配置;
2)减少采集服务器,发出close信号;
(4)引擎作为内存一级队列列表,语言版本作为二级队列,新闻url作为三级队列;
(5)根据url的hash编码取余找到对应引擎的队列;
(6)在引擎队列下,根据语言版本找到相应队列;
(7)对url的hash编码对应语言队列在内存中进行检索;
(8)检索到,放弃新闻采集,进行下一条新闻url提取,重复执行(1);
(9)没有检测到,多个采集器对hash值进行按存活采集服务器数量进行取余操作,根据余数分配到对应的采集器,添加hash数值到对应引擎的队列,增加时间戳,采集新闻内容,进行结构化存储,并对采集内容通过hash算法进行指纹提取,作为内容验证内容;
(10)对超过阚值时间的hash数值清理,回收内存;
(11)对内存监控,空闲内存低于预定阚值,对各队列进行强制回收释放,释放时间最长的hash值。
本发明的另一目的在于提供一种所述基于多语言高效数据采集方法的基于多语言高效数据采集系统,所述基于多语言高效数据采集系统包括:
关键字录入模块,用于通过管理平台文本输入框进行关键字录入;
识别语言类型模块,用于识别输入语言类型,并通过翻译引擎对文本进行多语言翻译;
语言分法模块,用于对多语言关键字在业务调度服务器进行分发;
调用模块,用于爬虫业务系统集群根据各子系统特定性能获取调度服务器任务,调用相关引擎进行业务爬取;
定向分析模块,用于爬取网页进行定向分析,对网页分成新闻内容页,新闻列表页,过滤无效信息;
链接模块,用于新闻页面,直接对链接获取新闻标题,内容,作者;
新闻获取模块,对于新闻列表页,启用二级爬虫子系统递归,对相关页面二次分析,直至获取最终新闻列表页,获取新闻页面,获取新闻相关内容;
去重模块,用于对获取新闻内容进行去重操作;
存储模块,用于对合法数据进行数据结构化存储。
所述识别语言类型模块进一步包括:
判断单元,用于通过字符集判断输入语言版本;
翻译单元,用于通过翻译引擎对录入语言进行翻译;
所述翻译单元包括:
记录单元,用于通过判定的输入语言版本,通过管道传输给机器翻译引擎,返回关键字集合记录集合,每个记录集合包含语言种类和翻译的目标词汇;
异常单元,如果记录集合为空,说明相应翻译出现异常;
传输单元,用于把录入关键字和翻译结果,传输给调度服务器。
所述语言分法模块进一步包括:
接收爬取业务单元,用于业务调度任务服务接收爬取业务,加入任务队列;
调度任务单元,用于根据语言版本,调度任务根据策略把任务分配;
引擎分配单元,用于中文关键字分配给支持中文的搜索引擎,英文分配给支持英文引擎服务器日文分配goo;
所述去重模块包括:
提取单元,用于提取将要采集新闻的url;
编码单元,用于对新闻的url进行hash编码;
定期监测单元,用于根据采集引擎个数,对hash编码W根据存活个数取余,根据余数分配到相应的采集引擎;
队列排序单元,引擎作为内存一级队列列表,语言版本作为二级队列,新闻url作为三级队列;
引擎队列寻找单元,用于根据url的hash编码取余找到对应引擎的队列;
语言队列寻找单元,用于在引擎队列下,根据语言版本找到相应队列;
检索单元,用于对url的hash编码对应语言队列在内存中进行检索。
本发明的另一目的在于提供一种实现所述基于多语言高效数据采集方法的计算机程序。
本发明的另一目的在于提供一种搭载所述计算机程序的信息数据处理终端。
本发明的另一目的在于提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行所述的基于多语言高效数据采集方法。
本发明通过搜索引擎实现快速新闻采集功能(60个全球引擎可以覆盖全球,全球新闻网站超过100万新闻网站);通过翻译引擎预处理,实现系统多语言自动采集;通过新闻url进行预处理快速去重;通过hash编码取余操作,实现快速负载均衡,并支持动态加载移除采集引擎;对同一个域名的url爬取,进行分散爬取,分散到不同的ip服务器,降低ip消耗,提高采集效率。
与现有技术相比,本发明有以下优势:
(1)降低服务器需求,从50台服务器需求下降到20台服务器,降低60%成本。
(2)提高部署速度,统计全球新闻站点,以27万新闻网站配置为例,传统方式需要400人月进行配置,目前系统只需要针对国内外60个引擎规则进行配属,需要人工为2人月,提高99.5%;全球新闻网站统计超过了100万个。
(3)传统采集方式可以满足100%采集,通过对网站顺序采集,按照系统计算,以现有部署能力,完全采集一遍,大概需要一天时间;通过本发明,可以采集70%的点击量最高的新闻满足实际需求,时间大概为4-6小时。
(4)可以对全球相关信息进行全面采集,覆盖全球多语言(目前支持32种语言)。
(5)带宽需求降低60%。
(6)通过url方式进行新闻内容去重,可以显著降低cpu和内存消耗,对比传统依据新闻标题/作者/站点/时间等多要素检索,可以降低内存消耗40%,节约cpu 30%。
(7)降低开发成本,提高工作效率。
(8)降低存储需求,有效降低存储空间。
附图说明
图1是本发明实施例提供的基于多语言高效数据采集方法流程图。
图2是本发明实施例提供的基于多语言高效数据采集系统结构示意图;
图3是本发明实施例提供的去重模块的结构示意图;
图中:1、关键字录入模块;2、识别语言类型模块;2-1、判断单元;2-2、翻译单元;2-2-1、记录单元;2-2-2、异常单元;2-3、传输单元;3、语言分法模块;3-1、接收爬取业务单元;3-2、调度任务单元;3-3、引擎分配单元;4、调用模块;5、定向分析模块;6、链接模块;7、新闻获取模块;8、去重模块;8-1、提取单元;8-2、编码单元;8-3、定期监测单元;8-4、队列排序单元;8-5、引擎队列寻找单元;8-6、语言队列寻找单元;8-7、检索单元。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面结合附图对本发明的应用原理作详细的描述。
如图1所示,本发明实施例提供的基于多语言高效数据采集方法包括以下步骤:
S101:通过管理平台文本输入框进行关键字录入;
S102:识别输入语言类型,并通过翻译引擎对文本进行多语言翻译,目前系统实现了32中语言翻译功能;
S103:对多语言关键字在业务调度服务器进行分发,针对不同国家,不同引擎服务国家,优化引擎业务;
S104:爬虫业务系统集群根据各子系统特定性能获取调度服务器任务,调用相关引擎进行业务爬取;
S105:爬取网页进行定向分析,对网页分成新闻内容页,新闻列表页等,过滤广告,色情,视频,音频等无效信息;
S106:新闻页面,直接对链接获取新闻标题,内容,作者等;
S107:对于新闻列表页,启用二级爬虫子系统递归,对相关页面二次分析,直至获取最终新闻列表页,获取新闻页面,获取新闻相关内容;
S108:对获取新闻内容进行去重操作;
S109:合法数据进行数据结构化存储。
在本发明的优选实施例中:步骤S102包括:
(1)通过字符集判断输入语言版本;
(2)通过翻译引擎对录入语言进行翻译,目前实现了32种语言翻译;
1)通过判定的输入语言版本,通过管道传输给机器翻译引擎,返回关键字集合记录集合,每个记录集合包含语言种类和翻译的目标词汇;
2)如果记录集合为空,说明相应翻译出现异常;
(3)把录入关键字和翻译结果,传输给调度服务器。
在本发明的优选实施例中:步骤S103目前支持引擎包括百度,搜狗,360,搜搜,有道,中搜,盘古,天网,必应,即刻,谷歌,aol search,lycos,yahoo搜索,goo(日),go.com,cnet search,meta,looksmart,dmoz,niceone,wlw,ciao,jubii,ceek,fireball,voila,hobot,splut,goto.com,naver(韩),rambler(俄罗斯),SAPO(葡萄牙),virgillo(意大利),walla(以色列),diri(保加利亚),search(瑞士),Najdi(马其顿),Das Oertilche(德国)等。
在本发明的优选实施例中:步骤S103具体包括:
(1)业务调度任务服务接收爬取业务,加入任务队列;
(2)根据语言版本,调度任务根据策略把任务分配;
(3)中文关键字分配给支持中文的搜索引擎,英文分配给支持英文引擎服务器(可以支持全部搜索引擎)日文分配goo。
在本发明的优选实施例中:步骤S108具体包括:
(1)提取将要采集新闻的url;
(2)对新闻的url进行hash编码;
1)网站对同一个ip爬取次数过多,会对采集服务器进行屏蔽,为了减少服务器ip消耗,需要把对同一个网站不同url爬取内容分散到不同的服务器。固定一个静态变量a初始值为1;
2)新闻的url的hash编码作为去重的唯一值。同时建立一个新变量W,通过对网站的url加上变量a,W=hash(url)+a;
3)a=a+1,如果a超过阈值L(值可根据实际情况调整),则a=a mod(L)
(3)(定期监测存活的)根据采集引擎个数,对hash编码W根据存活个数取余,根据余数分配到相应的采集引擎;
1)支持热加载和移除采集引擎。增加多采集服务器,可以通过向分发服务器发出alive信号,分发服务器可以动态加载配置,增加服务器个数,进行新的取余运算,分发任务,之前分发任务不受影响;
2)如果要减少采集服务器,可以让预先关闭的服务器发出close信号,不再分配新任务,等完成采集队列任务后即可下线;
(4)引擎作为内存一级队列列表,语言版本作为二级队列,新闻url作为三级队列;
(5)根据url的hash编码取余找到对应引擎的队列;
(6)在引擎队列下,根据语言版本找到相应队列;
(7)对url的hash编码(采用md5方式)对应语言队列在内存中进行检索(二分法/冒泡法);
(8)如果检索到,则放弃新闻采集,进行下一条新闻url提取,重复执行(1);
(9)如果没有检测到,针对多个采集器,对hash值进行按存活采集服务器数量进行取余操作,根据余数分配到对应的采集器,添加hash数值到对应引擎的队列,增加时间戳,采集新闻内容,进行结构化存储,并对采集内容通过hash算法进行指纹提取,作为内容验证内容;
(10)定期任务,对超过阚值时间的hash数值清理,回收内存;
(11)定期任务,对内存监控,空闲内存低于预定阚值,对各队列进行强制回收释放(内存过低会增加重复率),释放时间最长的hash值。
如图2所示,本发明实施例提供的基于多语言高效数据采集系统包括:
关键字录入模块1,用于通过管理平台文本输入框进行关键字录入。
识别语言类型模块2,用于识别输入语言类型,并通过翻译引擎对文本进行多语言翻译。
语言分法模块3,用于对多语言关键字在业务调度服务器进行分发。
调用模块4,用于爬虫业务系统集群根据各子系统特定性能获取调度服务器任务,调用相关引擎进行业务爬取。
定向分析模块5,用于爬取网页进行定向分析,对网页分成新闻内容页,新闻列表页等,过滤广告,色情,视频,音频等无效信息。
链接模块6,用于新闻页面,直接对链接获取新闻标题,内容,作者等。
新闻获取模块7,对于新闻列表页,启用二级爬虫子系统递归,对相关页面二次分析,直至获取最终新闻列表页,获取新闻页面,获取新闻相关内容。
去重模块8,用于对获取新闻内容进行去重操作;
存储模块9,用于对合法数据进行数据结构化存储。
识别语言类型模块2进一步包括:
判断单元2-1,用于通过字符集判断输入语言版本。
翻译单元2-2,用于通过翻译引擎对录入语言进行翻译。
翻译单元2-2包括:
记录单元2-2-1,用于通过判定的输入语言版本,通过管道传输给机器翻译引擎,返回关键字集合记录集合,每个记录集合包含语言种类和翻译的目标词汇。
异常单元2-2-2,如果记录集合为空,说明相应翻译出现异常。
传输单元2-3,用于把录入关键字和翻译结果,传输给调度服务器。
语言分法模块3进一步包括:
接收爬取业务单元3-1,用于业务调度任务服务接收爬取业务,加入任务队列。
调度任务单元3-2,用于根据语言版本,调度任务根据策略把任务分配。
引擎分配单元3-3,用于中文关键字分配给支持中文的搜索引擎,英文分配给支持英文引擎服务器(可以支持全部搜索引擎)日文分配goo。
去重模块8包括:
提取单元8-1,用于提取将要采集新闻的url。
编码单元8-2,用于对新闻的url进行hash编码;
定期监测单元8-3,用于根据采集引擎个数,对hash编码W根据存活个数取余,根据余数分配到相应的采集引擎。
队列排序单元8-4,引擎作为内存一级队列列表,语言版本作为二级队列,新闻url作为三级队列。
引擎队列寻找单元8-5,用于根据url的hash编码取余找到对应引擎的队列。
语言队列寻找单元8-6,用于在引擎队列下,根据语言版本找到相应队列。
检索单元8-7,用于对url的hash编码(采用md5方式)对应语言队列在内存中进行检索(二分法/冒泡法)。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输)。所述计算机可读取存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘SolidState Disk(SSD))等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于多语言高效数据采集方法,其特征在于,所述基于多语言高效数据采集方法包括:
(1)关键字录入;
(2)识别输入语言类型,对文本多语言翻译;
(3)对多语言关键字分发;
(4)根据各子系统特定性能获取调度服务器任务,调用相关引擎进行业务爬取;
(5)网页分成新闻内容页,新闻列表页,过滤无效信息;
(6)新闻页面直接对链接获取新闻信息;
(7)新闻列表页,启用二级爬虫子系统递归,页面二次分析,获取新闻列表页,获取新闻页面,获取新闻;
(8)获取新闻内容去重;
(9)合法数据的数据结构化存储。
2.如权利要求1所述的基于多语言高效数据采集方法,其特征在于,所述识别输入语言类型,对文本多语言翻译具体包括:
(1)通过字符集判断输入语言版本;
(2)通过翻译引擎对录入语言进行翻译;
1)通过判定的输入语言版本,通过管道传输给机器翻译引擎,返回关键字集合记录集合,每个记录集合包含语言种类和翻译的目标词汇;
2)如果记录集合为空,相应翻译出现异常。
3.如权利要求1所述的基于多语言高效数据采集方法,其特征在于,所述对多语言关键字分发具体包括:
(1)业务调度任务服务接收爬取业务,加入任务队列;
(2)根据语言版本,调度任务根据策略把任务分配;
(3)中文关键字分配给支持中文的搜索引擎,英文分配给支持英文引擎服务器日文分配goo。
4.如权利要求1所述的基于多语言高效数据采集方法,其特征在于,所述获取新闻内容去重具体包括:
(1)提取将要采集新闻的url;
(2)对新闻url的hash编码;
1)对同一个网站不同url爬取内容分散到不同的服务器,固定一个静态变量a初始值为1;
2)建立新变量W,通过对网站的url加上变量a,W=hash(url)+a;
3)a=a+1,如果a超过阈值L,则a=a mod(L);
(3)根据采集引擎个数,对hash编码W根据存活个数取余,根据余数分配到相应的采集引擎;
1)向分发服务器发出alive信号,分发服务器动态加载配置;
2)减少采集服务器,发出close信号;
(4)引擎作为内存一级队列列表,语言版本作为二级队列,新闻url作为三级队列;
(5)根据url的hash编码取余找到对应引擎的队列;
(6)在引擎队列下,根据语言版本找到相应队列;
(7)对url的hash编码对应语言队列在内存中进行检索;
(8)检索到,放弃新闻采集,进行下一条新闻url提取,重复执行(1);
(9)没有检测到,多个采集器对hash值进行按存活采集服务器数量进行取余操作,根据余数分配到对应的采集器,添加hash数值到对应引擎的队列,增加时间戳,采集新闻内容,进行结构化存储,并对采集内容通过hash算法进行指纹提取,作为内容验证内容;
(10)对超过阚值时间的hash数值清理,回收内存;
(11)对内存监控,空闲内存低于预定阚值,对各队列进行强制回收释放,释放时间最长的hash值。
5.一种如权利要求1所述基于多语言高效数据采集方法的基于多语言高效数据采集系统,其特征在于,所述基于多语言高效数据采集系统包括:
关键字录入模块,用于通过管理平台文本输入框进行关键字录入;
识别语言类型模块,用于识别输入语言类型,并通过翻译引擎对文本进行多语言翻译;
语言分法模块,用于对多语言关键字在业务调度服务器进行分发;
调用模块,用于爬虫业务系统集群根据各子系统特定性能获取调度服务器任务,调用相关引擎进行业务爬取;
定向分析模块,用于爬取网页进行定向分析,对网页分成新闻内容页,新闻列表页,过滤无效信息;
链接模块,用于新闻页面,直接对链接获取新闻标题,内容,作者;
新闻获取模块,对于新闻列表页,启用二级爬虫子系统递归,对相关页面二次分析,直至获取最终新闻列表页,获取新闻页面,获取新闻相关内容;
去重模块,用于对获取新闻内容进行去重操作;
存储模块,用于对合法数据进行数据结构化存储。
6.如权利要求5所述的基于多语言高效数据采集系统,其特征在于,所述识别语言类型模块进一步包括:
判断单元,用于通过字符集判断输入语言版本;
翻译单元,用于通过翻译引擎对录入语言进行翻译;
所述翻译单元包括:
记录单元,用于通过判定的输入语言版本,通过管道传输给机器翻译引擎,返回关键字集合记录集合,每个记录集合包含语言种类和翻译的目标词汇;
异常单元,如果记录集合为空,说明相应翻译出现异常;
传输单元,用于把录入关键字和翻译结果,传输给调度服务器。
7.如权利要求5所述的基于多语言高效数据采集系统,其特征在于,所述语言分法模块进一步包括:
接收爬取业务单元,用于业务调度任务服务接收爬取业务,加入任务队列;
调度任务单元,用于根据语言版本,调度任务根据策略把任务分配;
引擎分配单元,用于中文关键字分配给支持中文的搜索引擎,英文分配给支持英文引擎服务器日文分配goo;
所述去重模块包括:
提取单元,用于提取将要采集新闻的url;
编码单元,用于对新闻的url进行hash编码;
定期监测单元,用于根据采集引擎个数,对hash编码W根据存活个数取余,根据余数分配到相应的采集引擎;
队列排序单元,引擎作为内存一级队列列表,语言版本作为二级队列,新闻url作为三级队列;
引擎队列寻找单元,用于根据url的hash编码取余找到对应引擎的队列;
语言队列寻找单元,用于在引擎队列下,根据语言版本找到相应队列;
检索单元,用于对url的hash编码对应语言队列在内存中进行检索。
8.一种实现权利要求1~4任意一项所述基于多语言高效数据采集方法的计算机程序。
9.一种搭载权利要求8所述计算机程序的信息数据处理终端。
10.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-4任意一项所述的基于多语言高效数据采集方法。
CN201810028948.6A 2018-01-12 2018-01-12 基于多语言高效数据采集方法、计算机程序 Active CN108153741B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810028948.6A CN108153741B (zh) 2018-01-12 2018-01-12 基于多语言高效数据采集方法、计算机程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810028948.6A CN108153741B (zh) 2018-01-12 2018-01-12 基于多语言高效数据采集方法、计算机程序

Publications (2)

Publication Number Publication Date
CN108153741A true CN108153741A (zh) 2018-06-12
CN108153741B CN108153741B (zh) 2021-10-15

Family

ID=62461422

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810028948.6A Active CN108153741B (zh) 2018-01-12 2018-01-12 基于多语言高效数据采集方法、计算机程序

Country Status (1)

Country Link
CN (1) CN108153741B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109697599A (zh) * 2018-12-19 2019-04-30 成都多用科技有限公司 一种驱动流程的系统及方法
CN110689033A (zh) * 2018-07-05 2020-01-14 第四范式(北京)技术有限公司 用于模型训练的数据获取方法、装置、设备及存储介质
CN112906401A (zh) * 2021-03-29 2021-06-04 山东浪潮通软信息科技有限公司 一种多语数据录入与存储的方法、设备及介质
CN114519163A (zh) * 2022-02-21 2022-05-20 江西数易科技有限公司 基于正则匹配和Bloom filter的增量新闻URL提取方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060149806A1 (en) * 2000-06-16 2006-07-06 Qurio Holdings, Inc. Hashing algorithm used for multiple files having identical content and fingerprint in a peer-to-peer network
CN104951512A (zh) * 2015-05-27 2015-09-30 中国科学院信息工程研究所 一种基于互联网的舆情数据采集方法及系统
CN105589953A (zh) * 2015-12-21 2016-05-18 南通大学 一种突发公共卫生事件互联网文本抽取方法
CN106598984A (zh) * 2015-10-16 2017-04-26 北京国双科技有限公司 网络爬虫的数据处理方法及装置
CN107451223A (zh) * 2017-07-17 2017-12-08 广州特道信息科技有限公司 一种高并发并行计算的大数据采集系统及方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060149806A1 (en) * 2000-06-16 2006-07-06 Qurio Holdings, Inc. Hashing algorithm used for multiple files having identical content and fingerprint in a peer-to-peer network
CN104951512A (zh) * 2015-05-27 2015-09-30 中国科学院信息工程研究所 一种基于互联网的舆情数据采集方法及系统
CN106598984A (zh) * 2015-10-16 2017-04-26 北京国双科技有限公司 网络爬虫的数据处理方法及装置
CN105589953A (zh) * 2015-12-21 2016-05-18 南通大学 一种突发公共卫生事件互联网文本抽取方法
CN107451223A (zh) * 2017-07-17 2017-12-08 广州特道信息科技有限公司 一种高并发并行计算的大数据采集系统及方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110689033A (zh) * 2018-07-05 2020-01-14 第四范式(北京)技术有限公司 用于模型训练的数据获取方法、装置、设备及存储介质
CN109697599A (zh) * 2018-12-19 2019-04-30 成都多用科技有限公司 一种驱动流程的系统及方法
CN109697599B (zh) * 2018-12-19 2022-01-04 成都多用科技有限公司 一种驱动流程的系统及方法
CN112906401A (zh) * 2021-03-29 2021-06-04 山东浪潮通软信息科技有限公司 一种多语数据录入与存储的方法、设备及介质
CN114519163A (zh) * 2022-02-21 2022-05-20 江西数易科技有限公司 基于正则匹配和Bloom filter的增量新闻URL提取方法
CN114519163B (zh) * 2022-02-21 2024-05-03 江西数易科技有限公司 基于正则匹配和Bloom filter的增量新闻URL提取方法

Also Published As

Publication number Publication date
CN108153741B (zh) 2021-10-15

Similar Documents

Publication Publication Date Title
CN106383887B (zh) 一种环保新闻数据采集和推荐展示的方法及系统
EP2915127B1 (en) Adjusting content delivery based on user submissions
CN108153741A (zh) 基于多语言高效数据采集方法、计算机程序
CN100541495C (zh) 一种个性化搜索引擎的搜索方法
US10218599B2 (en) Identifying referral pages based on recorded URL requests
CN103139256B (zh) 一种多租户网络舆情监控方法及系统
CN102208992A (zh) 面向互联网的不良信息过滤系统及其方法
US20110246462A1 (en) Method and System for Prompting Changes of Electronic Document Content
US20150294005A1 (en) Method and device for acquiring information
CN106021418A (zh) 新闻事件的聚类方法及装置
KR101556743B1 (ko) 웹 수집에 기반한 관심 정보 생성 장치 및 그 방법
CN105007314A (zh) 面向海量读者阅读数据的大数据处理系统
CN113961810A (zh) 新闻推送方法、装置、计算机设备和存储介质
CN102567521A (zh) 网页数据抓取过滤方法
Li [Retracted] Internet Tourism Resource Retrieval Using PageRank Search Ranking Algorithm
CN112989167B (zh) 搬运账号的识别方法、装置、设备及计算机可读存储介质
CN1845134B (zh) 基于计算机网络的防转载或/和反剽窃监控方法
CN111949849B (zh) 鱼类信息的获取方法、装置、电子设备及可读存储介质
KR101888866B1 (ko) 저작권 보호를 통한 콘텐츠 유통 방법 및 그 시스템
CN116089732B (zh) 基于广告点击数据的用户偏好识别方法及系统
CN107784054B (zh) 一种页面发布方法和装置
KR100840019B1 (ko) 사용자의 스케쥴 정보를 이용하여 광고를 제공하는 방법 및시스템
CN113505172B (zh) 数据处理方法、装置、电子设备及可读存储介质
Hardi et al. pengelompokan topik dokumen berbasis text mining dengan algoritme k-means: studi kasus pada dokumen kedutaan besar Australia Jakarta
Yan et al. Emotional responses through COVID-19 in Singapore

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