2011/06/30

Blogger API Get Request

Blogger API に対し最初に発行すべき Get Request 先はどこか? についてわかったこと。

gdata-1.1.2 (ruby-lib)を使ってログインしてから

https://www.blogger.com/feeds/default/blogs

に対して Get リクエストすると基本的な情報が返ってきた。
その XML はこのような構成になっており

<xml root>
  <title/>
  <name/>
  <link/>
  <author/>
  <entry>
    <published/>
    <updated/>
    <category/>
    <link/>
  </entry>
</xml root>


こんなような def を用意すると...

def xinfo_link(str)
   # @xr = response.to_xml.root
   # str = "link" or "entry/link"
   @xr.get_elements("#{str}").each{|x|
    m = x.attributes['rel'].to_s.match(/\#(.*?)$/)
    m ? s = m[1] : s = x.attributes['rel']
    print "#{s} => ", x.attributes['href'], "\n"
  }
end

各種 URL を得ることができました。
下記のリンク先(末尾)の内容どおり実際にテンプレート用URLなども用意されておりちょっと驚きました。

また、これまで使用したラベル(category)も全て格納されておりました。
こんなような def を用意すると、

def category
  # @xr = response.to_xml.root
  @xr.get_elements('entry/category').each{|y| print "[", y.attributes['term'], "]\s"}
  print "\n"
end

category 一覧をみることができました。

# Category:
[Music] [get-item-amazon] [OSX] [SnowLeopard] [readbook] [AirMac] [Safari] [Amazon] [Apple] [importdata] [AirPort] [2010-amazon-api-jp] [News] [MacVim] [mdiary]     [mblogger] [Book] [AppleScript] [google] [gem] [essay] [Leopard] [vi] [Blogger] [Perl] [x] [Nuclear] [sleep] [launchd] [Design] [RubyCocoa] [vim] [iTunes] [git]     [RubyUtility] [Ruby] [daybook] [TV] [RubyOSA] [plutil] [macruby]



下記を参考にさせていただきました。

Blogger Developer Group | Google グループ

Blogger Developers Network: Using OACurl to explore Blogger’s API

I'd Rather Hack: Howto Change Blogger Settings with the GData API

0 件のコメント: