douban-client豆瓣客戶端 API
douban-client 是對豆瓣 API v2 接口進行了一個簡單封裝,主要包括了 OAuth 2.0 認證、圖片上傳以及接口方面的調(diào)用。
目前已完成的接口有:
* 用戶 User * 廣播 Miniblog * 豆郵 Doumail * 日記 Note * 相冊 Album * 圖片 Photo * 讀書 Book * 電影 Movie * 音樂 Music * 線上活動 Online * 同城活動 Event * 論壇 Discussion * 回復(fù) Comment
使用說明:
1. 豆瓣Api V2認證統(tǒng)一使用OAuth2 2. 數(shù)據(jù)返回格式統(tǒng)一使用json,GData不再使用 3. 需要授權(quán)的Api,需要加access_token的Header,并且使用https協(xié)議,限制具體見OAuth2文檔 4. 不需要授權(quán)公開api可以使用http,參數(shù)里面如果不包含apikey的話,限制單ip每分鐘10次 5. Api里面的通配符,:id代表純數(shù)字, :name代表由數(shù)字+字母+[-_.]這些特殊字符 6. 使用HTTP Status Code表示狀態(tài) 7. 列表參數(shù)使用start和count 8. POST/PUT 時中文使用UTF-8編碼 9. 時間格式:yyyy-MM-dd HH????ss, 如"2007-06-28 11:16:11"
OAuth 2.0 示例代碼:
from douban_client import DoubanClient
API_KEY = 'your api key'
API_SECRET = 'your api secret'
# 在 OAuth 2.0 中,
# 獲取權(quán)限需要指定相應(yīng)的 scope,請注意!!
# scope 權(quán)限可以在申請應(yīng)用的 "API 權(quán)限" 查看。
SCOPE = 'douban_basic_common,shuo_basic_r,shuo_basic_w'
client = DoubanClient(API_KEY, API_SECRET, your_redirect_uri, SCOPE)
# 以下方式 2 選 1:
# 1. 引導(dǎo)用戶授權(quán)
print 'Go to the following link in your browser:'
print client.authorize_url
code = raw_input('Enter the verification code:')
client.auth_with_code(code)
# 2. 如果有之前有 token,則可以
client.auth_with_token(token)
# Token Code
token_code = client.token_code
# Refresh Token
# 請注意:`refresh_token_code` 值僅可在授權(quán)完成時獲取(即在 `auth_with_code`, `auth_with_password` 之后)
refresh_token_code = client.refresh_token_code
client.refresh_token(refresh_token_code) # refresh token評論
圖片
表情
