数据源
开放数据集
一般是针对行业的数据库。比如:
美国人口调查局
提供人口信息,地区分布和教育情况等美国公民相关的数据:http://www.census.gov/data.html
欧盟
欧盟开放数据平台,提供欧盟各机构的大量数据:http://open-data.europa.eu/en/data/
Facebook官方提供的API,用于查询该网站用户公开的海量信息:https://developers.facebook.com/docs/graph-api
Amazon
亚马逊网络服务开放数据集:http://aws.amazon.com/datasets
谷歌金融,收录了40年以来的股票数据,实时更新:https://www.google.com/finance
北京大学
北京大学开放研究数据平台:http://opendata.pku.edu.cn/
imageNet
目前世界上图像识别最大的数据库:http://www.image-net.org/
爬虫抓取
一般是针对特定的网站或APP。在Python爬虫中,基本上会经历三个过程。
- 使用Requests爬取内容,即使用Requests库来抓取网页信息。
- 使用XPath解析内容。XPath,即XML路径语言,它是一种用来确定XML文档中某部分位置的语言,可以通过元素和属性进行位置索引。
- 使用Pandas保存数据。可以用Pandas保存爬取的数据,最后通过Pandas再写入XLS或MySQL等数据库中。
日志采集
日志记录了用户访问网站的全过程:哪些人在什么时间,通过什么渠道,都执行了哪些操作;系统是否发生了错误;甚至包括用户的IP、HTTP请求的时间,用户代理等。日志采集可以分两种形式:
通过Web服务器采集
例如httpd、Nginx、Tomcat都自带日志记录功能。还有其他采集工具,如Hadoop的Chukwa、Cloudera的Flume、Facebook的Scribe等。
自定义采集用户行为
例如用JavaScript代码监听用户的行为、AJAX异步请求后台记录日志等。
日志收集有助于我们了解用户的操作数据,适用于运维监控、安全审计、业务数据分析等场景。一般Web服务器会自带日志功能,也可以使用Flume从不同的服务器集群中采集、汇总和传输大容量的日志数据。
传感器
传感器基本上采集的是物理信息。比如图像、视频或某个物体的速度、压强等。传感器采集基本是基于特定的设备,将设备采集的信息进行收集即可。