一种基于元搜索的内网信息采集方法技术

技术编号:7288264 阅读:644 留言:0更新日期:2012-04-25 13:01
本发明专利技术涉及一种基于元搜索的内网信息采集方法,它面向内网信息系统,通过各信息系统内置的检索引擎进行敏感信息的汇总采集,很好的保证了各信息系统的系统独立性,同时采集系统可以很方便的嵌入不同的复杂内网信息系统环境。其优点是应对内网信息系统的扩展,对于系统更改只是添加了一个搜索配置,对于敏感词的监控和存档,配置简单,无需定制专门的采集模版。

【技术实现步骤摘要】

本专利技术涉及。
技术介绍
为了对内网中海量信息进行有效的监控和存档,一个有效的采集系统是先决条件。现有的采集系统大多采用直接对网站进行采集的方式,首先,这样效率低下,对采集系统负载要求很高。曾经有研究采用分布式采集系统来提高采集效率,但是这对采集系统提出了较高的硬件要求,其次,需要面对各种不同的网站情况,对采集源的格式分析比较复杂,采集系统很难及时应对URL的频繁变化,最后,传统的采集系统大多以存档为主要目的,缺乏对采集内容的分析和重组,在浩瀚的内容面前很难及时发现热点和趋势。
技术实现思路
本专利技术的目的是提供一种结构简单的基于元搜索的内网信息采集方法。本专利技术的基于元搜索的内网信息采集方法,工作对象是内网发布的网站/信息系统,包括以下步骤分时启动采集程序;根据敏感词对内网信息系统内置搜索引擎的搜索条件构建;自动采集搜索结果。其中关键的采集流程如下 1、分时启动采集线程对于η个焦点,以现有设定的X个搜索引擎,采集任务启动后会发生最多η*22次对搜索引擎的访问,最多解析到η*χ*100条最新信息,去重、热点分析、统计信息更新,目标页面主体获取等操作会造成对网络和数据库的频繁访问,如果一个时点同时启动各个搜索引擎的采集线程,会对服务器硬件和网络环境造成过大的压力,对搜索引擎频繁的访问也容易被列入非正常访问黑名单,所以采用分时启动采集线程的模式执行采集任务。在采集前先根据当前采集周期(比如1小时)和焦点数量η计算两个焦点线程启动的时间间隔m秒(m=50*60/n),在构造下一个焦点线程前主进程睡眠m秒,在此采集周期内会间隔性的有线程启动和退出,确保在同一时间点不会有过多线程同时进行。在最后一个线程启动后m秒,每隔20秒检查一次当前活动线程数,如果线程数大于1,继续执行20秒, 如果线程数小于1,采集程序退出。这样的机制首先保证了程序对资源平均有效的利用,很大程度上避免过于频繁的操作造成的硬件无响应,对程序运行稳定性也提供一定的保证。2、构造搜索引擎链接系统配置的焦点组合分为两个字段存储,包含词(多个词之间用空格隔开)和不包含词 (多个词之间用空格隔开),需要对焦点组合进行拆分、编码转换和重新组合,然后构造搜索引擎链接。首先从焦点组合中将词提取出来转化成URL编码,加上搜索引擎特定的与非组合方式,构成焦点词的重新组合,如“存贷款+利率-房贷”转换后是“%E5%AD%98%E8%B4%B7%E6%AC%BE+%E5%88%A9%E7%8E%87+-%E6%88%BF%E8%B4%B7 ”,再将搜索弓 | 擎链接、采集页码,编码格式等信息合并得到 URL,如 http://www. google, com. hk/search q=%E5%AD%98%E8%B4%B7 %E6%AC%BE+%E5%88%A9%E7%8E%87+-%E6%88%BF%E8%B4%B7&um=l&ie=UTF-8&tbs=nws:l&sour ce=og&sa=N&tab=wn&hl=zh-CN&num=100,表示用谷歌资讯搜索“存贷款利率”,且不含“房贷”,一次读取100条信息。3、模拟浏览器访问网页使用模拟浏览器访问页面的模式,模拟浏览器代理her-Agent为Mozi 1 la/4. 0 (compatible; MSIE 8. 0),设置为不自动执行HTTP重定向,循环最多5次(不限次数方式访问部分站点会造成死循环)累加获取cookie,直至HTTP连接状态正常,此时获取到的累加 cookie记录了模拟浏览器的重定向操作,使用这个cookie再次模拟浏览器打开链接,就可以获得正确的页面。GZIP数据压缩传输技术被很多大流量的站点所使用,传统的数据流接收方式接收到的是乱码,因此在读取文件流前要先得到其传输格式,可以通过使用connection. getHeaderField ("Content-Encoding")方法确定页面是否是通过GZIP压缩传输的,如果是GZIP格式传输,就要使用GZIPInputMream方式接收文件流,否则接收到的文件流包括英文字符也全是乱码。一般页面都可以通过使用 connection 的 getHeaderField ("Content-Type")尝 SWhttp头中获取字符集,使用截取字符串“charset=”获得编码格式。如果没有的话,读取前10 个字符,检查html的header并通过多项正则表达式获得编码格式。在获取到编码格式后就可以直接读取文件流得到页面源码了。4、采集结果页面内容解析对搜索引擎搜索到的结果页面,通过对网页源码的解析,可以得到网页中信息,如标题、链接、发布时间,信息摘要等。页面源码的解析主要依靠于前期配置的正则表达式组合,将页面源码中信息字段的起始和结尾处具有标记性的html标签做成正则表达式,通过正则表达式来获取包含所需信息的字符串。例如在谷歌搜索结果页面源码中提取标题的正则表达式为“<a href=(. * )</aX/h3>”,对匹配到的字符串去除“<.* >”标记就可以得到标题。对于新闻类页面还要得到新闻的相关数,百度热闻采集到后,将热闻标题使用百度新闻标题搜索和谷歌资讯标题搜索,得到的结果作为该热闻的相关新闻(按主热闻docid 关联),谷歌热闻根据相关更多链接获取二级页面作热闻的相关新闻。本专利技术由于采取以上技术方案,其具有以下优点1、应对内网信息系统的扩展,对于系统更改只是添加了一个搜索配置;2、对于敏感词的监控和存档,配置简单,无需定制专门的采集模版。附图说明图1是本专利技术方法的采集流程图。 具体实施例方式下面结合附图和实施例对本专利技术的进行详细的描述。 如图1所示,为一个基于元搜索的内网敏感信息发现系统的采集模块流程首先,根据启动分时采集程序①;程序读取配置的焦点(敏感词策略)并构造搜索引擎链接获取搜索结果②;做去重处理,并获取网页主体信息③;获取结果分两部分存储,目标焦点等自段信息以数据表单的形式存储④;网页主体提取后,以txt的格式存储⑤;主体内容存入本地文件系统中⑧,以供索引程序处理并建立索引⑥;表单则存入本地数据库⑦; 数据库和文件系统共同为页面程序提供全文检索服务⑨。权利要求1. ,其特征在于它包含如下步骤分时启动采集程序,根据敏感词对内网信息系统内置搜索引擎的搜索条件构建,自动采集搜索结果;其中分时启动采集线程在采集前先根据当前采集周期和焦点数量n,计算两个焦点线程启动的时间间隔m秒,m=50*60/n,在构造下一个焦点线程前主进程睡眠m秒,在此采集周期内会间隔性的有线程启动和退出,确保在同一时间点不会有过多线程同时进行,在最后一个线程启动后m秒,每隔20秒检查一次当前活动线程数,如果线程数大于1,继续执行20秒,如果线程数小于1,采集程序退出;构造搜索引擎链接系统配置的焦点组合分为两个字段存储,包含词和不包含词,首先从焦点组合中将词提取出来转化成URL编码,加上搜索引擎的与非组合方式,构成焦点词的重新组合,然后构造搜索引擎链接;模拟浏览器访问网页使用模拟浏览器访问页面的模式,模拟浏览器代理^er-Agent 为Mozilla/4.0 (co本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:杨更
申请(专利权)人:军工思波信息科技产业有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术