【Galileo】自动拍照并发送微博平台的搭建
0赞1、首先是微博平台的搭建,打开http://open.weibo.com/
创建后,会得到APP key和App Secret这两个东西在接下来的设置中十分重要。
2、Oauth2.0授权设置
在应用信息的高级信息中,设置授权回调页和取消授权回调页,我这里是设置成百度的页面,如图
3、引导用户授权
在浏览器标签页中输入如下地址:
https://api.weibo.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI
其中YOUR_CLIENT_ID:即应用的AppKey,可以在应用基本信息里查看到。
YOUR_REGISTERED_REDIRECT_URI:即之前填写的授权回调页,注意一定要完全相同。
如果用户授权成功后,会跳转到回调页,开发者此时需要得到url参数中的code值,注意code只能使用一次。
4、换取access token
首先在ubuntu的火狐浏览器中,下载一个poster插件
然后在插件中URL输入:
https://api.weibo.com/oauth2/access_token?client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=authorization_code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI&code=CODE
YOUR_CLIENT_ID:即应用的AppKey,可以在应用基本信息里查看到。
YOUR_CLIENT_SECRET:即前面的App Secret
YOUR_REGISTERED_REDIRECT_URI:即之前填写的授权回调页
点击POST就能获得access token信息
5、python的使用
根据所获得access tocken来编写python,这里给出部分代码
#! /usr/bin/env python # -*- coding: utf-8 -*- import weibo APP_KEY = ''# 注册生成的key和secret APP_SECRET = '' CALL_BACK = ''#授权回调页 def test(value): print "OK !" + str(value) def WeiboPic(content,picUrl): client = weibo.APIClient(APP_KEY, APP_SECRET, CALL_BACK) client.set_access_token("", 3600)#生成的access tocken f = open(picUrl, 'rb') client.statuses.upload.post(status=content2, pic=f) f.close() def Weibo(content): client = weibo.APIClient(APP_KEY, APP_SECRET, CALL_BACK) client.set_access_token("", 3600)#生成的access token client.statuses.update.post(status=content) if __name__=="__main__": content = """hello world!""" content2 = """hello world""" picUrl=r'test.jpg' #Weibo(content) WeiboPic(content2,picUrl) print "post picture success!"
6、linux平台C++调用python实现微博发送的方式
假设python保存的主文件为main.py,使用linux的system()函数即可实现使用方式为system("main.py");
7、这样就能实现自动发送至微博平台。