python官网可以下载api_新浪微博API的使用Python

本文记录了用新浪微博官方Python SDK调用API进行开发的流程。

准备工作

申请成为开发者并创建一个应用:

首先要有一个新浪微博的账号,然后去新浪微博开放平台(

P.S.,应用需要设置一个回调地址(CALL_BACK),可以设定为默认的回调网址:

这一步完成后,将得到三个有用的信息:APP_KEY,APP_SECRET和CALL_BACK,这三个信息在后面编写程序时将用到。

OAuth2.0授权

微博开放接口的调用,如发微博、关注等,都是需要获取用户身份认证的。目前微博开放平台用户身份鉴权主要采用的是OAuth2.0。

下载和安装新浪微博Python SDK

网页中说明了安装有两种方式,第一种用命令行工具pip安装,第二种下载源码包安装。

对于第一种安装方式,pip是Python的包管理工具,可以很方便的安装Python模块。安装成功后,只需在命令行(或linux终端)中执行pip install sinaweibopy,SDK的包sinaweibopy就安装完毕。测试是否安装成功,可以在python命令行中输入:import weibo,如果没有错误提示说明安装成功。实际上Python SDK主要就是模块weibo,后面在使用SDK时就是调用该模块中的函数。

对于第二种方式,需要拷贝下载的源码到安装目录或者配置Python模块搜索的Path中。

读写微博接口程序

下面就可以调用微博API写微博操作程序了,下面简单介绍一个抓取微博数据的程序。

#_*_ coding: utf-8 _*_

importsys

reload(sys)

sys.setdefaultencoding('utf-8')from weibo importAPIClientimportjsonimportwebbrowserimportio

APP_KEY= '' ## 填写应用程序的信息

APP_SECRET = ''CALLBACK_URL= 'https://api.weibo.com/oauth2/default.html'client= APIClient(app_key=APP_KEY, app_secret=APP_SECRET, redirect_uri=CALLBACK_URL)

url=client.get_authorize_url()#TODO: redirect to url

webbrowser.open_new(url)#print url#obtain url code:

code = raw_input("input the code:").strip()

client= APIClient(app_key=APP_KEY, app_secret=APP_SECRET, redirect_uri=CALLBACK_URL)

r=client.request_access_token(code)

access_token= r.access_token #新浪返回的token,类似abc123xyz456

expires_in = r.expires_in #token过期的UNIX时间:http://zh.wikipedia.org/wiki/UNIX%E6%97%B6%E9%97%B4#TODO: 在此可保存access token

client.set_access_token(access_token, expires_in)

res= client.statuses.public_timeline.get(count=200) ##返回最新的200条热门微博#res = client.statuses.user_timeline.get() ##返回作者发布的历史微博#res = client.statuses.friends_timeline.ids.get() ##返回好友发布的微博id#res=client.emotions.get()

a= json.dumps(res, ensure_ascii = False,indent = 2)

fout= io.open('test','w',encoding='utf-8')

fout.write(a)

运行程序,自动打开回调页,将网址内的“code”拷贝至程序,程序执行成功后,就可以得到微博数据了。

152207002989078.png

152207166424752.png

这里实际是调用新浪微博提供的API,具体参考官方文档。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值