最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python腳本實(shí)現(xiàn)自動發(fā)帶圖的微博

 更新時間:2016年04月27日 11:45:20   作者:Tacey Wong  
這篇文章主要介紹了Python腳本實(shí)現(xiàn)自動發(fā)帶圖的微博的相關(guān)資料,需要的朋友可以參考下

 要自動發(fā)微博最簡單的辦法無非是調(diào)用新浪微博的API(因?yàn)橹皇呛唵蔚陌l(fā)微博,就沒必要用它的SDK了)。參考開發(fā)文檔http://open.weibo.com/wiki/API 進(jìn)行代碼編寫

創(chuàng)建應(yīng)用

要使用微博的API,需先要有個應(yīng)用。隨便是個應(yīng)用就行,可以到這里注冊一個站內(nèi)應(yīng)用應(yīng)用注冊。注冊應(yīng)用的主要目的是要獲得MY_APPKEY 和MY_ACCESS_TOKEN,如圖所示

獲取access_token

API的調(diào)用需要登錄授權(quán)獲得access_token。參考

首先,調(diào)用https://api.weibo.com/oauth2/authorize接口,獲得code。

該接口有三個必須的參數(shù):

•client_id:申請應(yīng)用時分配的AppKey。
•redirect_url:就是創(chuàng)建應(yīng)用中設(shè)置的回調(diào)地址
•response_type:響應(yīng)類型,可設(shè)置為code

具體做法,就是在瀏覽器打開https://api.weibo.com/oauth2/authorize?client_id=123050457758183&redirect_uri=http://www.example.com/response&response_type=code。該方法會轉(zhuǎn)到授權(quán)頁面,授權(quán)之后會轉(zhuǎn)到http://www.example.com/response&code=CODE,記錄下該url中的CODE。

接著,調(diào)用https://api.weibo.com/oauth2/access_token接口,獲得access_token。

該接口有如下必須的參數(shù):

•client_id:申請應(yīng)用時分配的AppKey。
•client_secret:申請應(yīng)用時分配的AppSecret。
•grant_type:請求的類型,填寫authorization_code
•code:調(diào)用authorize獲得的code值。
•redirect_uri: 就是創(chuàng)建應(yīng)用中設(shè)置的回調(diào)地址

具體做法就是構(gòu)建一個POST請求,再在返回的數(shù)據(jù)中找到access_token,保存下來。具體的Python代碼:

import requests
url_get_token = "https://api.weibo.com/oauth2/access_token"
#構(gòu)建POST參數(shù)
playload = {
"client_id":"填入你的",
"client_secret":"填入你的",
"grant_type":"authorization_code",
"code":"上面獲得的CODE",
"redirect_uri":"你的回調(diào)用地址"
}
#POST請求
r = requests.post(url_get_token,data=playload)
#輸出響應(yīng)信息
print r.text 

如果正常的話,會返回下面這樣的json數(shù)據(jù):

{"access_token":"我們要記下的","remind_in":"157679999","expires_in":157679999,"uid":"1739207845"}

根據(jù)返回的數(shù)據(jù),access_token的值就是我們要的。其中remind_in的值是access_token的有效期,單位為秒,我們可以看到,這個時間有3、4年之久,足夠我們用了。

發(fā)表純文字微博

調(diào)用接口https://api.weibo.com/2/statuses/update.json發(fā)表文字微博,其參數(shù)如下

其中必須的:

•access_token: 就是我們上一步獲得的access_token
•status:要發(fā)布的微博文本內(nèi)容,必須做URLencode,內(nèi)容不超過140個漢字

具體代碼:

#發(fā)表文字微博的接口
url_post_a_text = "https://api.weibo.com/2/statuses/update.json"
#構(gòu)建POST參數(shù)
playload = {
"access_token":"填入你的",
"status":"This is a text test@TaceyWong"
}
#POST請求,發(fā)表文字微博
r = requests.post(url_post_a_text,data = playload) 

如果正常,會有向下面這樣的結(jié)果

發(fā)表帶圖片的微博

調(diào)用接口http://open.weibo.com/wiki/2/statuses/upload發(fā)表圖片微博,其參數(shù)如下:

其中必須的參數(shù):

•access_token: 就是我們上一步獲得的access_token
•status:要發(fā)布的微博文本內(nèi)容,必須做URLencode,內(nèi)容不超過140個漢字
•pic:要發(fā)表的圖片,采用multipart/form-data編碼方式

具體的代碼:

#發(fā)表圖文微博的接口
url_post_pic = "https://upload.api.weibo.com/2/statuses/upload.json"
#構(gòu)建文本類POST參數(shù)
playload={
"access_token":"2.0086XhtBIQLH7Ed67706b6c8TQ8XdE",
"status":"Test:Post a text with a pic & AT someone@丸子覠"
}
#構(gòu)建二進(jìn)制multipart/form-data編碼的參數(shù)
files={
"pic":open("logo.png","rb")
}
#POST請求,發(fā)表微博
r = requests.post(url_post_pic,data=playload,files = files)

如果正常,結(jié)果會像下面這樣:

注:requests的具體用法請參考[requests文檔](http://docs.python-requests.org/en/master/)

相關(guān)文章

最新評論

沁阳市| 云阳县| 乌鲁木齐县| 井冈山市| 辽中县| 淳安县| 新干县| 鸡西市| 吴江市| 榆树市| 库尔勒市| 滁州市| 蛟河市| 西丰县| 皋兰县| 兴海县| 安丘市| 河曲县| 吉林省| 霍城县| 德庆县| 三明市| 莆田市| 邳州市| 区。| 六盘水市| 屯昌县| 丽江市| 玛曲县| 谷城县| 大冶市| 区。| 武陟县| 民乐县| 华安县| 石嘴山市| 温州市| 崇左市| 河北区| 萍乡市| 井陉县|