第13回北海道開発オフ成果:だべさのTumblrを作った
第13回北海道開発オフにて。
@dabesaをTumblrデビューさせることにしました。
・だべさ - Tumblr
そして、ふぁぼったーの人気タブから、その日最もFavされたポストを抜き出して、ポストさせることにしました。1日1回、日付変更の直前に動きます。
初めてTumblr APIを触ったのですが、ポストさせること自体はそんなに難しく無いですね。
ソースは以下。
@dabesaをTumblrデビューさせることにしました。
・だべさ - Tumblr
そして、ふぁぼったーの人気タブから、その日最もFavされたポストを抜き出して、ポストさせることにしました。1日1回、日付変更の直前に動きます。
初めてTumblr APIを触ったのですが、ポストさせること自体はそんなに難しく無いですね。
ソースは以下。
#! /usr/bin/ruby
require 'rss/2.0'
require 'open-uri'
require 'net/http'
require 'cgi'
begin
open('http://favotter.matope.com/rss.php?mode=best') do |http|
response = http.read
result = RSS::Parser.parse(response, false)
post = result.items[0].description
# pの前のスペースは本当は不要
post.gsub!(/< p align=\"right\" class=\"favotters\">.+?fav by/,'')
post.gsub!(/<.+?>/,'')
post.sub!(/\s/,' ')
link = result.items[0].link
mess = "@" + post + "\r\n" + link
pmess = CGI.escape(mess)
opt = "email=メールアドレス&password=パスワード&type=regular&body=" + pmess
Net::HTTP.version_1_2
Net::HTTP.start("www.tumblr.com", 80) do |http|
responce = http.post("/api/write", opt)
end
end
rescue
print "RuntimeError: ", $!, "\n";
end