第38å Rubyã§Web API
Net::HTTPã使ã£ã¦Web APIããããã½ã¼ã¹
require 'net/http'; Net::HTTP.version_1_2; ############################################################ # URLãå®ç¾©ãã ############################################################ url = { :scheme => 'http', # ä»å使ããªã :server => 'api.twitter.com', :port => 80, :path => '/1/statuses/user_timeline.json', :query => 'screen_name' + '=' + 'koduki' }; ############################################################ # æ¥ç¶ãã¦GETã®çµæã表示 ############################################################ begin Net::HTTP.start(url[:server], url[:port]) {|http| response = http.get(url[:path] + '?' + url[:query]); puts response.body; } rescue Exception puts $! end
ããã¾ã§ã®åèè³æ
るびま
http://twitool-box.net/api-viewer/
http://dev.twitter.com/doc/get/statuses/user_timeline
Net::HTTPの例外補足方法 - OVERT MEMO
åãåã£ãJSONãRubyãªãã¸ã§ã¯ãã«ããã
Ruby1.8ã§ã¯JSONããRubyãªãã¸ã§ã¯ããä½ãããã®ãæ¨æºã§å
¥ã£ã¦ãªããããªã®ã§ãgemã§å
¥ãããã¨ã«ããã
ãããªã gem ãã
RROR: While executing gem ... (Gem::RemoteSourceException) HTTP Response 302 fetching http://gems.rubyforge.org/yaml
ã¨è¨ã£ã¦ããããã
ã©ãããåãã«ãããµã¼ãã¼ãå¤ãã£ã¡ããã¿ããã§ãããã«åããããµã¼ããå¤ãã£ã¡ãã£ããã update ãã¾ã¾ãªããªãã¿ããã
ãããã©ããããã¨ããã¨ãèªåã§ã gemã®ãã¡ã¤ã«ãè½ã¨ãã¦ãã¦ãããã使ã£ã¦ã¢ãããã¼ãããã¿ããã
åèï¼AIR - 覚書 Wiki*
ãããInstantRailsの悪夢 - asanonoの日記
ãããhttp://rubyforge.org/projects/rubygems/
ä¸è¨åèéãã
ãã¡ã¤ã«ã®ãã¦ã³ãã¼ãå¾ $ sudo gem i rubygems-update-1.3.7.gem $ sudo update_rubygems $ sudo gem install json
ã§ãã¾ããå
¥ã£ãã¿ããã
ãããªãã§ããgemã®ä½¿ãæ¹
å ¥ã£ãã®ã§ã
require 'json';
ãããã©ããªãã¨ãããããããããªé¦¬é¹¿ãªï¼ã
ãªãã¨gemã§å
¥ãããã®ã¯ãã½ã¼ã¹ã®æåã«ã
require 'rubygems';
ã£ã¦æ¸ããªãã¨ãã¡ã¿ããã
åèï¼RubyGems の使い方 - WebOS Goodies
ããããJSONã§åå¾ããæååããªãã¸ã§ã¯ãã«çæããã½ã¼ã¹
ããã§ãããããã½ã¼ã¹ã®æ²è¼ã
ããã¼ã¯ã¾ã£ããã¯ã¾ã£ãã
p ã§è¦ãã¨æ¥æ¬èªã16é²æ°ã§è¦ãã¡ãããã ãããªãã©ãããããã¨æã£ãã
putsã§è¦ãã°ã¡ããã¨æ¥æ¬èªã§è¦ããã®ãã
åèï¼UTF8が16進文字列に化ける(変わる?) -教えてください。Nokogiriと- Ruby | 教えて!goo
ã§ã¯ãã½ã¼ã¹ã§ãã
require 'rubygems'; require 'net/http'; require 'json'; Net::HTTP.version_1_2; ############################################################ # URLãå®ç¾©ãã ############################################################ url = { :scheme => 'http', # ä»å使ããªã :server => 'api.twitter.com', :port => 80, :path => '/1/statuses/user_timeline.json', :query => 'screen_name' + '=' + 'koduki' }; ############################################################ # è¿ã£ã¦ããJSONããã¼ã¹ãã¦çæããããªãã¸ã§ã¯ãç¨å¤æ° ############################################################ res_obj = nil; ############################################################ # æ¥ç¶ãã¦GETã®çµæãåå¾ ############################################################ begin Net::HTTP.start(url[:server], url[:port]) {|http| res_obj = JSON.parse( http.get(url[:path] + '?' + url[:query]).body ); } rescue Exception puts $! end ############################################################ # åå¾ãããªãã¸ã§ã¯ãã表示 ############################################################ puts res_obj;
ã¨ãããã¨ã§kodukiåã®ææ°20件ã®çºè¨ã表示ããã®ã¯ããã
紅月さん@がんばらない (@koduki) | Twitter
require 'rubygems'; require 'net/http'; require 'json'; Net::HTTP.version_1_2; ############################################################ # URLãå®ç¾©ãã ############################################################ url = { :scheme => 'http', # ä»å使ããªã :server => 'api.twitter.com', :port => 80, :path => '/1/statuses/user_timeline.json', :query => 'screen_name' + '=' + 'koduki' }; ############################################################ # è¿ã£ã¦ããJSONããã¼ã¹ãã¦çæããããªãã¸ã§ã¯ãç¨å¤æ° ############################################################ res_obj = nil; ############################################################ # æ¥ç¶ãã¦GETã®çµæãåå¾ ############################################################ begin Net::HTTP.start(url[:server], url[:port]) {|http| res_obj = JSON.parse( http.get(url[:path] + '?' + url[:query]).body ); } rescue Exception puts $! end ############################################################ # kodukiåã®ææ°20件ã表示 ############################################################ puts res_obj.map{|item| item['text']}.join("\n");
ãµã¼ãæ§ç¯
ãµã¼ãæ§ç¯ã«é¢ãããã¼ã¸ãä½æãã¾ããã
ããã°ã©ã ãåããç°å¢ããªãã¨ããããã¯ãæ¤è¨ãã¦ã¿ã¦ã¯ãããã§ããããã
http://www.x-shenwu.net/~home_page/sakura_vps/