python利用新浪API实现数据的抓取

1. 首先来看看最后我们得到的是什么结果,是不是你想要了解的东西,再决定是否往下读。

python利用新浪API实现数据的抓取

我主要抓取了大概4天的数据,图上可以看的出来大概有360万条数据,由于是在自己的电脑上爬取做数据的,有时候晚上断网了就间断了,所以大概一天可以爬取有100万左右的最新微博数据(因为我调用的是最新的微博APIpublic_timeline)

API文档当中定义了很多返回的类型(以json数据格式返回,我选取了一些我认为重要的信息抓取下来_如图所示_: 大概有id号所在位置粉丝数,发的微博内容,发微博的时间等等。 当然这些数据都可以根据自己的需要进行定制。)

大概就是这些内容,你如果认为这对你有点帮助,就请继续读下去... 第一次写博客有些啰嗦

2. 前期准备

我们需要的东西:

数据库: mongodb(可以使用客户端MongoBooster)

开发环境: Python2.7(我用的IDE是Pycharm)

一个新浪开发者账号: 用自己的新浪微博账号注册就行(后面会讲)

需要的库:requests和pymongo(这些都可以在Pycharm中下载)

2.1 mongodb的安装

MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。Mongo使用C++开发。Mongo的官方网站地址是:http://www.mongodb.org/,读者可以在此获得更详细的信息。

2.2 新浪开发者账号的注册方法

注册新浪微博账号(163邮箱、手机号)

python利用新浪API实现数据的抓取

创建完毕需要填写手机号验证 

进入新浪开放者平台:http://open.weibo.com/

python利用新浪API实现数据的抓取

 

python利用新浪API实现数据的抓取

 

python利用新浪API实现数据的抓取

点击继续创建

初次创建应用需要填写如下信息:

python利用新浪API实现数据的抓取

代码实现

有了token之后,实现抓取数据就十分简单了

能抓取数据的多少就取决于你的token权限了

接下来就是利用API来获取数据了:新建一个文件weibo_run.py

python利用新浪API实现数据的抓取