ruby xmlrpc/clientでの自動ブログ更新

先日友人から、「ブログbot作ってよ。」って言われた。
知るかよ・・

でも調べちゃう。

どうやら、xmlrpcを使えば良いということで、rubyのxmlrpc/clientを使用した。
seesaaブログの

「seesaaブログ使ってるよ」
という友人の話だったので、seesaaブログのIDを作ってやってみるぜ!

まずは、blogIDというものを取得しなければいけないらしい。

require 'xmlrpc/client'

# seesaaブログの場合このURIを指定
proxy = XMLRPC::Client.new_from_uri('http://blog.seesaa.jp/rpc')

# ブログIDを取得するメソッド
proxy.call("blogger.getUsersBlogs", "", 'user-id', 'password')

これを実行すると、そのユーザのブログ一覧を以下のような形式で取得できる。

[
  {"url"=>"http://xxx.seesaa.net/", "blogid"=>"123456", "blogName"=>"blog1", "blogFunc"=>"normal"},
  {"url"=>"http://yyy.seesaa.net/", "blogid"=>"654321", "blogName"=>"blog2", "blogFunc"=>"normal"}
]

ここにあるblogidを使って、metaWeblog.newPostに投稿内容を渡すだけ!

  proxy.call('metaWeblog.newPost', blogid, 'user-id', 'password', {title: "記事のタイトル", description: "記事の内容"})

これだけでブログへの投稿が終わっていた・・・。
簡単だなぁー。

タイトルとURLをコピーしました