最近公司要做个页面信息采集的东西,没什么好的思路,所以在网上找了点东西,学习一下。

信息采集系统指的是按标准格式采集指定网络信息,同搜索引擎的区别在于其采集的目的性更强,采集源范围也比较小。这里简单介绍一下信息采集系统实现上的几个关键问题:

1) 采集网页数据
        VC,Java,VB的网络通讯功能都足够实现信息采集,VC中的Get/Post方式可采集网页信息,也可以直接用socket方式采集,但一般用前一 种模式,另外为了提高采集效率都采用多线程技术,在网上的一些Spider程序都是多线程的,可以借鉴.

2) 如何按关键字来信息
        信息采集的一大特点是按多个关键字将信息拆分出来,例如供求信息中的商机标题、联系 人、电话、Email、内容等,实现时需要事先定义好这些关键字,然后在网页中搜索,将夹在两个关键字当中的信息采集出来,另外还要注意,网页中的许多关 键字是包含空格的,空格数量也不能确定,例如"邮   件",这就要求在查找关键字时要把关键字按单个汉字拆开来匹配,遇到中间的空格要跳过去.这一步实现了,信息就会变的非常有规则,也就可以导入本地库了.

3) 网页中的链结获取算法
        了解HTML的应该清楚,网页中的链结都是通过<a href =..>的标签定义的,但也会分很多情况,例如:  < a href = "...">  这是常见的链结格式,但要注意采集出来的链结可能是完整的http://...,也可能是相对路径,要分别处理;  < a href = ''> 用单引号分隔的,所以用算法获取链结的时候要根据双引号和单引号两种标记来分隔;< a href = .. onclick = javascript:view('..','')> 通过javascript的函数处理链结,算法上就麻烦了许多。

4) 无效数据的过滤
        即使通过关键字的方式摒弃了许多广告信息,但在关键字信息中也会有不少无效数据,包括一些信息开头的空格

5) 特定数据的获取算法
        Email,电话等数据符合一定的规范,一般可以用一些算法提取出来,也可以 用正则表达式技术来获取,在网络上有不少此类算法.在信息采集中,Email和电话等关键信息是比较分散的,需要用提取算法把这些信息提取出来放在正确的 位置.这是非常有必要的,因为信息采集系统往往会有邮件群发的功能.

信息采集的整个流程可总结如下:

a) 首先,获取网页的完整信息
 b) 用算法获取网页中的正文信息,即抛弃HTML的标签文本
 c) 去除多余的空行
 d) 按定义好的关键字将信息分隔开
 e) 对信息进行无效数据过滤
 f) 信息入本地库
 g) 获取网页中的链结,对该链结从a)步骤开始重复,但注意网页中的许多链结是广告或无效的,因此要事先定义好一些链结关键字,只有包含关键字的链结才处理

信息采集系统的技术实现相关推荐

  1. 抵扣联信息采集系统打印报错

    今天财务的中兴通抵扣联信息采集系统不能打印,症状如下: 1.打印预览时候报错: 错误代码:list index out of bounds(3) 2.打印的时候也是报错: 错误代码:list inde ...

  2. 软件测试信息采集系统案例实践,软件测试课件.ppt

    <软件测试课件.ppt>由会员分享,可在线阅读,更多相关<软件测试课件.ppt(36页珍藏版)>请在人人文库网上搜索. 1.1,软件测试实用教程方法与实践,PartII 软件测 ...

  3. 2019考研调剂信息 计算机专业,东莞理工学院2019年考研调剂信息(计算机科学与技术、环境工程专业)...

    今天小编为大家提供东莞理工学院2019年考研调剂信息(计算机科学与技术.环境工程专业),请大家注意考研调剂条件,及时进行考研调剂! 东莞理工学院2019年考研调剂信息(计算机科学与技术.环境工程专业) ...

  4. 业务架构、信息架构、技术架构三位一体,互联网营销

    客户天天打电话要修改产品功能,简单的一个需求可能要做一个月.产品越改越笨重,为了赶工期bug越来越多.头疼! 产品从初级版到现在已经四个年头,相关的程序员来去换了三批,在补丁上打补丁是常有的事,很多功 ...

  5. 华为信息与网络技术学院2016-2017大学生ICT技能大赛圆满闭幕

    [中国,深圳,2017年2月28日]2月27日,华为信息与网络技术学院(简称:华为ICT学院)2016-2017大学生ICT技能大赛决赛圆满闭幕,华为企业BG企业技术服务部总裁孙茂录为大赛闭幕致辞.本 ...

  6. 【软考-中级】系统集成项目管理工程师-【3信息系统集成专业技术知识】

    持续更新............... [第三章]信息系统集成专业技术知识-13 分 3.1 信息系统-建设-1分 3.1.1 生命周期(掌握) 3.1.2 开发方法(掌握) 3.2 信息系统-设计 ...

  7. 安全狗获聘福建省网络与信息安全信息通报中心技术支撑单位

    近日,由于长期提供有效的信息通报技术支撑工作并且表现优异,安全狗荣誉受聘成为福建省网络与信息安全信息通报中心技术支撑单位. 当前,数字经济转型在全国范围内快速发展,同时福建省数字经济规模不断突破2万亿 ...

  8. 基于空间域的信息隐藏关键技术研究

    实践题目:基于空间域的信息隐藏关键技术研究 目标是实现对320x240的灰度图像(样本自选,不能是lena图像)进行信息隐藏设计,应用空间域信息隐藏方法(例如LSB替换方法等)进行实验测试.对上述技术 ...

  9. 今日新网络舆情信息监测收集技术解决办法

    对于舆情信息员来说,面对互联网上浩瀚纷杂的信息内容,要如何快速又高效的做好今日舆情信息监测与搜集工作呢?针对这一问题,提出了以下今日新网络舆情信息监测收集的办法,主要从技术层面进行舆情工作的开展. 今 ...

最新文章

  1. JPA EnableJpaAuditing 审计功能
  2. oracle忘记口令
  3. ios11,弹出层内的input框光标错位 键盘弹出时,输入信息,光标一直乱跳
  4. java一些常用并发工具示例
  5. 使用SELECT 和OPEN CURSOR 读取big table的性能比较
  6. java字符串表表容量_java – 我可以使用什么符号表来存储~50 mil的字符串,快速查找而不会耗尽堆空间?...
  7. 我从参加#PerfMatters会议中学到的东西
  8. linux系统下安装两个或多个tomcat
  9. Git之原有基础开发新功能
  10. Flink SQL CDC 上线!我们总结了 13 条生产实践经验
  11. twitter.common.concurrent deadline and defer
  12. java怎么使用floor_Java NavigableSet floor()用法及代码示例
  13. 胚系短变异 | 变异位点及基因型准确性的过滤
  14. 学习某一门技术的步骤(韩顺平老师提供)
  15. 国内电影下载网站收集
  16. HCIE-Routing Switching认证
  17. python关于 unittest的常见用法:前置条件与后置条件
  18. 学弟:功能测试转测试开发容易吗?
  19. 生财有术:及时止损,及时止损,及时止损
  20. FTP(File Transfer Protocol,文件传输协议)

热门文章

  1. JavaScript 基础之: JavaScript 秘密花园
  2. 如何对待第一个女朋友--给初恋男生的爱情锦囊
  3. KDevelop使用经验
  4. KDevelop修改字体样式和大小
  5. 初识qml——PathView xyz轴 路径属性 旋转效果 鼠标键盘控制
  6. 服务容错保护Hystrix服务网关Zuul
  7. springcloud——zuul
  8. 广州APP开发公司:婚纱摄影APP制作开发
  9. Microsoft SQL Server 2008 R2提示错误:此计算机上安装了 Microsoft Visual Studio 2008 的早期版本→解决办法
  10. C语言——生产者消费者问题