内容正文:
5.2数据的采集
数据的来源广泛(主要是互联网和物联网)、类型丰富、规模巨大。采集数据首先要明确数据应用项目的需求,围绕选定的项目主题,制订数据采集的需求清单和内容大纲,再采用适当的方法和工具进行采集。
5.2.1 数据采集的方法和工具
数据采集的基本方法包括系统日志采集法、网络数据采集法和其他数据采集法。
1.系统日志采集法
在信息系统中,系统日志是记录系统中硬件,软件和系统问题的信息文件。系统日志包括操作系统日志,应用程序日志和安全日志。系统日志采集数据的 方法通常是在目标主机上安装个小程序,将目标主机的文本,应用程序、数据库等日志信息有选择地定向推送到日志服务器进行存储、监控和管理。
通过日志服务器可以监视系统中发生的事件,可以检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹。例如,安全管理信息系统就是以系统日志服务器采集原始目志数据,以目志记录文本文件实现日志数据的监控和保存,以数据库操作进行日志有效信息的管理工作。
2.网络数据采集法
网络数据采集是指通过网络爬虫或网站公开API ( Aplication Pregramming Interface,应用程序楼口)等方式从网站上获取数据信息。网络爬虫从一个或若f初始网页的URL ( Uniform Resouree Locator.统一资源定位符)开始,获得初始网页上的URL.在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件(图5-4)。该方法可以将非结构化数据从网页中抽取出来,将其存储为统一的本地数据文件,并以结构化的方式存储。它支持图片、音额、视颖等文件或附件的采集,附件与正文可以自动关联。
拓展:Python网络数据采集程序使用的扩展库
在众多的数据采集工具中,Python以其简洁、开源和包容的特性在教据采集和分析领域独树一帜。由于Python可以安装第三方扩展库模块来扩展功能, 因此使用Python进行网络数据采集和分析显得简单易用。以下是使用Python进行网络数据采集和分析所需要的一些第三方扩展库。
(1) NumPy
Numly ( Numerical Pyhon)是构建科学计算最基础的软件库,为Python中的n维数组和矩阵的操作提供了大量有用的功能。该库还提供了NumPy数组类型的数学运算向量化,可以提升性能,加快执行速度。
(2)SciPy
S