Ruby で 2ch (1)
(1) とかつけると次回があるようにみえるけど、 飽きたら無いです。
そういうわけで、常々 2ch を iPhone で快適に見たいなあと考えていたのですが、 rep2 は iPhone で見づらいし、BB2C などのアプリじゃ Mac と未読/既読が同期できない。
ということで、以下の要件を満たす 2ch ブラウザ欲しくなった。
- ウェブアプリ型。
- WebAPI を持っている。
- iPhone 用のネイティブアプリ。
- Mac 用のネイティブアプリ。
ようするにクラサバ型の 2ch アプリ。 細々とサーバの実装、Ruby のライブラリの実装からはじめてます。
とりあえずスレの dat ファイルを Ruby でダウンロードするためのクラスを書きました。
使い方はこんな感じ。
require 'rl2/thread/downloader'
logger = Logger.new(STDOUT)
logger.level = Logger::DEBUG
d = Rl2::Thread::Downloader.new( :logger => logger )
d.dat_download 'http://pc11.2ch.net/mac/dat/1232092092.dat', '/Users/yuanying/Projects/ruby/1232092092.dat'
第二引数に与えたパスに dat ファイルをダウンロードします。
すでに dat ファイルがパスにダウンロードされていた場合は、 差分だけダウンロードしてすでにダウンロードされている dat ファイルに追記します。
次は subject.txt ファイルをダウンロードするクラスを作る。