基于python编写的微博应用

yipeiwu_com6年前Python基础

本文实例讲述了基于python编写的微博应用,分享给大家供大家参考。具体如下:

在编写自己的微博应用之前,先要到weibo开放平台申请应用的公钥和私钥。
下载python版的SDK,打开example目录,仿照oauthSetTokenUpdate.py进行编码,

复制代码 代码如下:
# -*- coding: utf-8 -*-

from weibopy.auth import OAuthHandler
from weibopy.api import API


consumer_key= '应用的key'
consumer_secret ='应用的App Secret'

auth = OAuthHandler(consumer_key, consumer_secret)
auth_url = auth.get_authorization_url()
print 'Please authorize: ' + auth_url
verifier = raw_input('PIN: ').strip()
auth.get_access_token(verifier)
api = API(auth)

status = api.update_status(status='hello world', lat='12.3', long='45.6') # 注意status必须是UTF-8编码的字符串,经纬度是可以不写的
print status.id
print status.text

运行这个程序就会提示一个URL链接,在浏览器里打开这个链接,并且给予访问权限,就会拿到一串PIN码。把这个PIN码输上去,就会发送一条推了,并且还会显示用户的Access token key和Access token secret。可以看到整个过程是很简单的:

用你的consumer_key和consumer_secret创建一个OAuthHandler对象auth。
告诉用户访问auth.get_authorization_url(),并让用户授权这个应用。
拿到用户的PIN码,用auth.get_access_token()拿到用户的Access token key和Access token secret。
用auth创建一个API对象api。
调用api的方法,例如update_status()就是发推。详细说明可以看API文档。

当然,每次都要求用户输入PIN码也太傻了,所以在用auth.get_access_token()拿到Access token key和Access token secret之后,就可以直接用它们来创建API对象了:

复制代码 代码如下:
# -*- coding: utf-8 -*-

from weibopy.auth import OAuthHandler
from weibopy.api import API


consumer_key= '应用的key'
consumer_secret ='应用的App Secret'
token = '用户的Access token key'
tokenSecret = '用户的Access token secret'

auth = OAuthHandler(consumer_key, consumer_secret)
auth.setToken(token, tokenSecret)
api = API(auth)

status = api.update_status(status='搞定收工~')

希望本文所述对大家的Python程序设计有所帮助。

相关文章

python执行使用shell命令方法分享

1. os.system(shell_command) 直接在终端输出执行结果,返回执行状态0,1 此函数会启动子进程,在子进程中执行command,并返回command命令执行完毕后的...

pycharm 使用心得(一)安装和首次使用

pycharm 使用心得(一)安装和首次使用

首先预览一下 PyCharm 在实际应用中的界面:(更改了PyCharm的默认风格) 安装 首先去下载最新的pycharm 2.7.3,进行安装。可以直接在官网下载。 PyCharm...

python中requests小技巧

python中requests小技巧

关于  Python requests ,在使用中,总结了一些小技巧把,记录下。 1:保持请求之间的Cookies,我们可以这样做。 2:请求时,会加上headers,一般我...

pyqt5 lineEdit设置密码隐藏,删除lineEdit已输入的内容等属性方法

pyqt5 lineEdit设置密码隐藏,删除lineEdit已输入的内容等属性方法

self.lineEdit.setEchoMode(QLineEdit.Password) 设置密码隐藏 self.lineEdit.setClearButtonEnabled(True...

Python面向对象编程基础实例分析

本文实例讲述了Python面向对象编程基础。分享给大家供大家参考,具体如下: 1、类的定义 Python中类的定义与对象的初始化如下,python中所有类的父类是object,需要继承。...