通过调用新浪微博API获取数据时数组采集中一个很好的方法,为了获取较新的资讯数据内容,本文主要介绍新浪微博OAuth2.0授权机制、微博开发者平台的使用、python调用微博API等内容,文末提供测试版python调用微博API的代码。

1. 新浪微博OAuth2.0授权机制

官方详解见连接:

新浪微博OAuth2.0授权机制

2.微博开发者平台的使用

地址:https://open.weibo.com/

打开微博开发者平台,采用网站接入WEB的方式。(移动端或微服务可以尝试)。

点击右上角的登陆:

采用账号登陆或安全登陆等方式,如无微博账户,可点击立即注册自行注册一个。

登陆后点击立即接入,创建新应用如下:

在此过程中,应用名称可能会和已有的冲突,改了好多次才成功创建。创建成功后页面自动跳转如下:

此时可以看到新建成功的AppKey与App Secret。

到此还尚未结束,还需要获取OAuth2.0 授权回调页,点击左侧高级信息后:

此时可以看到,授权回调页:未填写,取消授权回调页:未填写。点击右侧的编辑,输入两个地址:

如果暂时想不到合适的地址,可以填写 https://api.weibo.com/oauth2/default.html

点击提交后,至此,微博开发者平台相关配置已全部完成。

3.python调用微博API

环境:pycharm、python3.6

安装包:sinaweibopy-ng

注:由于网传安装包sinaweibopy在测试时无法安装,可能是由于版本不同所致,官方提供SDK下载地址如下:https://open.weibo.com/wiki/SDK#Python_SDK ,但是测试时无法访问,故下载的安装包为sinaweibopy-ng进行测试,如图:

测试版python调用微博API的完整代码如下:

"""!/usr/bin/env python3.6-*- coding: utf-8 -*---------------------------------Description :--------------------------------@Time    : 2019/4/14 18:40@File    : weiboAPI.py@Software: PyCharm--------------------------------@Author  : lixj@contact : lixj_zj@163.com
"""from weibo import APIClient# 1.配置
APP_KEY = '你的APP_KEY'
APP_SECRET = '你的APP_SECRET'
CALLBACK_URL = '你的CALLBACK_URL'  # 回调授权页面,用户完成授权后返回的页面# 2.调用APIClient生成client实例
client = APIClient(app_key=APP_KEY, app_secret=APP_SECRET, redirect_uri=CALLBACK_URL)# 3.得到授权页面的url
url = client.get_authorize_url()
print(url)# 4.点击访问url,在浏览器端获得code
code = '6ecdbf350f0680a6f00cc8c34ae721a6'
req = client.request_access_token(code)
client.set_access_token(req.get('access_token'), req.get('expires_in'))# 5.调用微博普通读取接口,返回最新的公共微博。
# 接口详情见 https://open.weibo.com/wiki/2/statuses/public_timeline
statuses = client.statuses__public_timeline()['statuses']
print(len(statuses))
# 6.输出部分信息
for i in range(0, len(statuses)):print(u'昵称:' + statuses[i]['user']['screen_name'])print(u'简单介绍:' + statuses[i]['user']['description'])print(u'位置:' + statuses[i]['user']['location'])print(u'微博:' + statuses[i]['text'])print(statuses[i])

问题1:

Make sure that you use a version of Python supported by this package. Currently you are using Python 3.6.

不兼容python版本,安装silangweiboapi-en即可

问题2:

注册微博开发版本,账号设置-高级设置;

授权回调页在授权设置里面没有。

填写完整的信息即可,对应填写的网站。

问题3:

输出信息方式:

statuses = client.statuses__public_timeline()['statuses']

问题4:

每次调用api时连接的code的值都会改变。

http://apps.weibo.com/heyshheyou?code=6257d8f27bc683052d5521f6096a8b4c

解决方法:待解决。

新浪微博OAuth2.0授权及使用python调用微博API相关推荐

  1. 新浪微博 OAuth2.0 授权认证

    微博开放接口的调用,如发微博.关注等,都是需要获取用户身份认证的.目前微博开放平台用户身份鉴权主要采用的是OAuth2.0.另外,为了方便开发者开发.测试自己的应用,我们还提供了Basic Auth的 ...

  2. 新浪微博Oauth2.0授权认证及SDK、API的使用(Android)

    ---------------------------------------------------------------------------------------------- [版权申明 ...

  3. 新浪微博OAUTH2.0授权验证(基于SSO客户端验证)

    1.新浪微博开放平台注册应用 微博开放平台的网址为:http://open.weibo.com/apps 应用注册成功之后要填写应用的相关信息 主要有:应用的包名和签名 包名就是eclipse下的包: ...

  4. Python调用微博API获取微博内容

    一:获取app-key 和 app-secret 使用自己的微博账号登录微博开放平台(http://open.weibo.com/),在微博开放中心下"创建应用"创建一个应用,应用 ...

  5. 微信公众平台OAuth2.0授权

    2019独角兽企业重金招聘Python工程师标准>>> 微信公众平台OAuth2.0授权详细步骤如下: 1. 用户关注微信公众账号. 2. 微信公众账号提供用户请求授权页面URL. ...

  6. Oauth2.0 授权认证

    Oauth2.0 授权认证 目录 1. OAuth协议是什么?. 1 2. 应用场景... 1 3. 名词定义... 2 4. 主要流程... 2 5. 四种授权模式... 3 6. 授权码授权方式. ...

  7. android新浪微博Oauth2.0认证以及登录

    前言:微博作为新兴的一项网络工具,在某种意义上讲实现了把世界变小的作用.足不出户,也变成了现实.作为程序员我们更加关注的是为我所用.幸好的是微博运行商为我们提供了丰富的接口,我们可以善用这些接口.首先 ...

  8. android 新浪微博Oauth2.0认证以及自定义webview认证

    首先不得不说,自己犯了一个比较窝囊的错误,不过也不能完全怪我,因为大家都知道,新浪微博Oauth2.0提供的jar包,好家伙2M多,谁看谁都不想用,才使得我去研究1.0的使用,研究好久,终于实现可用了 ...

  9. 微信企业号OAuth2.0授权-Java

    为什么80%的码农都做不了架构师?>>>    我也是醉了,中午做个饭这么难吃!连自己都看不下去了!怀着沉重的心情把微信企业号OAuth2.0授权看了看,感觉与公众号差别没什么,相信 ...

最新文章

  1. 概率论与数理统计常用英文词汇对照
  2. 基础 - #pragma pack (n) 设置对齐方式
  3. sparksql(2)——dataframe的ap-printSchema、withColum、count、drop、describe、select
  4. JavaEE班第四天
  5. C#开发命令执行驱动程序 之 控制标志的命令行参数
  6. html堆叠柱状图脚本,Highcharts 堆叠组柱形图
  7. 动态调用Webservice 支持Soapheader身份验证(转)
  8. Unreal Engine 4 C++ UCLASS构造函数易出错分析
  9. js实现上传文件实时显示缩略图
  10. 在win7中chm打不开的方法
  11. Qt调用工业相机之相机的触发模式及代码实现
  12. vmware fusion个人版
  13. 数字电路设计入门(fpga/asic)
  14. mysql的insert_MySQL中INSERT的一般用法
  15. 十大管理概念(背诵)
  16. 打开.pdm文件的工具
  17. 银行从业资格证-个人理财(初级)-多选计算题整理
  18. JS 实现鼠标进入变色
  19. 未来的全能保姆机器人作文_未来的保姆机器人650字作文
  20. android kotlin + coroutines 高仿微信图库

热门文章

  1. 5.1 创建slab描述符
  2. 程序员表白代码大全,快来向你的ta表白吧~~~
  3. Android_观看视频卡顿原因及解决办法
  4. 项目笔记8(尚品汇)
  5. android控件向内弧度_描边/内间距/四个角不同弧度(包括圆角)
  6. 委内瑞拉总统宣布监管基于石油的加密货币“Petro”
  7. RedHat 7.3 DNS-unbound配置方法
  8. Date时间比较大小
  9. UIImagePickerController--查看相册中的照片和视频
  10. HTML零基础入门详细教程