Ruby/scrAPIで野良RSS翻訳 (1)
25 Jan 2007この続き scrAPIで野良RSS翻訳を作ってみる。翻訳サービスはGoogle翻訳で、多分サービス違反とかだと思うけど細かいことは気にしない。
まずPOSTをnet/httpで取る
require 'rubygems'
require 'scrapi'
require 'net/http'
require 'open-uri'
$KCODE = 'u'
hl = "ja"
ie = "UTF8"
text = "Cat"
langpair= URI.escape("en|ja")
param = "hl=#{hl}&ie=#{ie}&text=#{text}&langpair=#{langpair}"
Net::HTTP.start('translate.google.com',80){|http|
response = http.post('/translate_t',param)
p response.body
}
ずらーっと翻訳結果のHTMLが表示されたっぽいのでOK。次にscrAPIで絞る、<div id="result_box">猫</div>みたいな感じに結果がでるっぽいのでごく単純に。
googleTranslateScrape = Scraper.define do
process "div#result_box", :resultText => :text
result :resultText
end
p googleTranslateScrape.scrape(response.body, :parser_options => {:char_encoding=>'utf8'})
むーとりあえずOKですな。次はRailsとかで適当に組み込む
