README.md in douban_api-0.1.2 vs README.md in douban_api-0.1.3
- old
+ new
@@ -1,16 +1,141 @@
# douban_api
Simple Ruby wrapper for [Douban API V2](http://developers.douban.com/wiki/?title=api_v2)
这个项目仍在开发中,缺少文档和测试,欢迎贡献。
## Installation
gem install douban_api
-
-## Examples
-### 获取某部电影
- Douban.movie('1292000')
- <Hashie::Mash alt="http://movie.douban.com/movie/1292000" alt_title="搏击俱乐部 / 搏击会" attrs=#<Hashie::Mash cast=["爱德华·诺顿 Edward Norton", "布拉德·皮特 Brad Pitt", "海伦娜·邦汉·卡特 Helena Bonham Carter", "杰瑞德·莱托 Jared Leto"] country=["美国", "德国"] director=["大卫·芬奇 David Fincher"] language=["英语"] movie_duration=["139 分钟"] movie_type=["剧情", "悬疑", "惊悚"] pubdate=["1999-10-15"] title=["Fight Club"] writer=["恰克·帕拉尼克 Chuck Palahniuk", "Jim Uhls"] year=["1999"]> author=[#<Hashie::Mash name="大卫·芬奇 David Fincher">] collection_link="http://api.douban.com/collection/218762015" id="http://api.douban.com/movie/1292000" image="http://img3.douban.com/spic/s1447851.jpg" mobile_link="http://m.douban.com/movie/subject/1292000/" rating=#<Hashie::Mash average="9.1" max=10 min=0 numRaters=200291> summary="杰克(爱德华•诺顿 饰)是一个大汽车公司的职员,患有严重的失眠症,对周围的一切充满危机和憎恨。\n一个偶然的机会,杰克遇上了卖肥皂的商人泰勒(布拉德•皮特),一个浑身充满叛逆、残酷和暴烈的痞子英雄,并因为自己公寓失火而住进了泰勒破旧不堪的家中。两人因缘际会地成为了好朋友,并创立了“搏击俱乐部”:一个让人们不戴护具而徒手搏击,宗旨在于发泄情绪的地下组织。\n俱乐部吸引了越来越多的人,逐渐发展成为一个全国性的地下组织,而泰勒也以自己个人的魅力,吸引着那些盲目的信徒。俱乐部的成员们到处滋事打架、大肆破坏,泰勒本人的行为也越来越疯狂。\n杰克对于“搏击俱乐部”的现况及泰勒的行为越来越无法忍受,和泰勒发生争执,泰勒离开了他。然而,杰克发现,他走到何处都无法摆脱泰勒的影子,他开始思考:我到底是谁?" tags=[#<Hashie::Mash count=29736 name="美国">, #<Hashie::Mash count=27727 name="心理">, #<Hashie::Mash count=22910 name="暴力">, #<Hashie::Mash count=20650 name="经典">, #<Hashie::Mash count=18032 name="悬疑">, #<Hashie::Mash count=12505 name="剧情">, #<Hashie::Mash count=9023 name="黑色">, #<Hashie::Mash count=5578 name="犯罪">] title="Fight Club">
-
-
+## Sample Sinatra App
+ require 'rubygems'
+ require 'sinatra'
+ require 'haml'
+ require 'douban_api'
+
+ enable :sessions
+
+ set :app_file, __FILE__
+ set :root, File.dirname(__FILE__)
+ set :views, 'views'
+ set :public_folder, 'public'
+
+ # 设置回调的URL和所需的scope(http://developers.douban.com/wiki/?title=oauth2)
+ set :callback_url, "http://doubanapi.notimportant.org/connect"
+ set :scope, "douban_basic_common,shuo_basic_r,shuo_basic_w"
+
+
+ # 设置 apikey和secret,可在 http://developers.douban.com/apikey/ 处查看
+ Douban.configure do |config|
+ config.client_id = ENV['DOUBAN_API_KEY']
+ config.client_secret = ENV['DOUBAN_API_SECRET']
+ end
+
+
+ get '/' do
+ haml :index, :layout => :'layouts/application'
+ end
+
+ get '/login' do
+ redirect Douban.authorize_url(:redirect_uri => settings.callback_url, :scope => settings.scope)
+ end
+
+ get '/connect' do
+ response = Douban.get_access_token(params[:code], :redirect_uri => settings.callback_url)
+ session[:access_token] = response.access_token
+ session[:user_id] = response.douban_user_id
+ redirect "/timeline"
+ end
+
+ get '/timeline' do
+ @client = Douban.client(:access_token => session[:access_token], :user_id => session[:user_id])
+ @statuses = @client.timeline
+ haml :timeline, :layout => :'layouts/application'
+ end
+
+## API Useage Examples
+
+ client = Douban.client(:access_token=>access_token, :user_id => user_id)
+
+ # 获取已认证用户对音乐的所有标签
+ client.user_music_tags
+
+ => [{"count"=>166, "alt"=>"http://music.douban.com/tag/内地", "title"=>"内地"},
+ {"count"=>155, "alt"=>"http://music.douban.com/tag/摇滚", "title"=>"摇滚"},
+ {"count"=>139, "alt"=>"http://music.douban.com/tag/美国", "title"=>"美国"},
+ {"count"=>127, "alt"=>"http://music.douban.com/tag/台湾", "title"=>"台湾"},
+ {"count"=>109, "alt"=>"http://music.douban.com/tag/Pop", "title"=>"Pop"},
+ {"count"=>105, "alt"=>"http://music.douban.com/tag/2011", "title"=>"2011"},
+ {"count"=>100, "alt"=>"http://music.douban.com/tag/华语", "title"=>"华语"},
+ {"count"=>97, "alt"=>"http://music.douban.com/tag/女声", "title"=>"女声"},
+ {"count"=>87, "alt"=>"http://music.douban.com/tag/Rock", "title"=>"Rock"},
+ {"count"=>83, "alt"=>"http://music.douban.com/tag/民谣", "title"=>"民谣"},
+ {"count"=>80, "alt"=>"http://music.douban.com/tag/2010", "title"=>"2010"},
+ {"count"=>77, "alt"=>"http://music.douban.com/tag/欧美", "title"=>"欧美"},
+ {"count"=>73, "alt"=>"http://music.douban.com/tag/英国", "title"=>"英国"},
+ {"count"=>73, "alt"=>"http://music.douban.com/tag/中国", "title"=>"中国"},
+ {"count"=>65, "alt"=>"http://music.douban.com/tag/2012", "title"=>"2012"},
+ {"count"=>60, "alt"=>"http://music.douban.com/tag/男声", "title"=>"男声"},
+ {"count"=>55, "alt"=>"http://music.douban.com/tag/流行", "title"=>"流行"},
+ {"count"=>52, "alt"=>"http://music.douban.com/tag/indie", "title"=>"indie"},
+ {"count"=>52, "alt"=>"http://music.douban.com/tag/rock", "title"=>"rock"},
+ {"count"=>48, "alt"=>"http://music.douban.com/tag/Indie", "title"=>"Indie"}]
+
+ # 已登录用户的豆邮收件箱
+ client.inbox
+
+ => [{"status"=>"R",
+ "sender"=>
+ {"avatar"=>
+ "http://img3.douban.com/view/site/small/public/fc82eb2dcec6ed0.jpg",
+ "alt"=>"http://site.douban.com/fuzz/",
+ "id"=>"104427",
+ "name"=>"THE FUZZ 法兹",
+ "uid"=>"fuzz"},
+ "title"=>"近期动向",
+ "published"=>"2012-12-07 11:32:04",
+ "content"=>
+ "打扰各位,近期2场演出后我们将休整一段时间,开始专辑的准备和录制工作!\r\n\r\n2场演出分别是\r\n12.21 月亮钥匙 W 刺猬\r\n12.28 光圈 地下丝绒45周年致敬演出 "receiver"=>
+ {"avatar"=>"http://img3.douban.com/icon/u2217855-34.jpg",
+ "alt"=>"http://www.douban.com/people/xiaosong/",
+ "id"=>"2217855",
+ "name"=>"小松其实还没有",
+ "uid"=>"xiaosong"},
+ "id"=>"283060020"},
+ {"status"=>"R",………………………………
+
+ # 发送一条广播
+ client.shuo("呵呵后")
+
+ => {"category"=>nil,
+ "reshared_count"=>0,
+ "attachments"=>[],
+ "entities"=>{"user_mentions"=>[], "topics"=>[], "urls"=>[]},
+ "muted"=>false,
+ "text"=>"呵呵后",
+ "created_at"=>"2012-12-07 14:58:49",
+ "title"=>"说:",
+ "can_reply"=>1,
+ "liked"=>false,
+ "source"=>{"href"=>"", "title"=>"douReminder"},
+ "like_count"=>0,
+ "comments_count"=>0,
+ "user"=>
+ {"description"=>"",
+ "small_avatar"=>"http://img3.douban.com/icon/u2217855-34.jpg",
+ "uid"=>"xiaosong",
+ "type"=>"user",
+ "id"=>"2217855",
+ "screen_name"=>"小松其实还没有"},
+ "is_follow"=>false,
+ "has_photo"=>true,
+ "type"=>"text",
+ "id"=>1059068526}
+
+更多请查看[文档](http://rdoc.info/github/seansay/douban_api/master/frames) 或阅读 [源码](https://github.com/seansay/douban_api/tree/master/lib/douban_api/client)
+
+## TODOs
+
+* Test, test, test……
+* 文档
+
## Copyright
This project a fork of [instagram-ruby-gem](https://github.com/Instagram/instagram-ruby-gem), see [LICENSE](https://github.com/seansay/douban_api/blob/master/LICENSE.md) for details.
\ No newline at end of file