2006年10月7日土曜日

Rubyのお勉強

 今の現場では、特定のウェブサイトに対してフィルタリングがかかっていて閲覧ができないサイトがあります。例えば2chとかですな。これだとカップラーメンをすすりながら、shitarabaのd20板を見るという昼休みの過し方ができないので、ションボリしておったわけです。しかし僕が運営している自宅サーバにはフィルタリングがかかっていないので(ダイナミックDNSでほいほいIP代わるし、どこからもリンクされていないので素性が不明だし、そもそも24時間動いているわけではないので当然っちゃ当然)、Rubyの勉強がてら次のような仕組みを作ってみました。ソースはへぼいので見せません。

"~/.navi2ch/"内にあるユーザのブックマーク情報からユーザが普段閲覧している各板・各スレッドのURIを生成

生成したURIにあるファイルをダウンロード(wget)

そのファイル一覧をHTML化して板毎に1つのファイルにする

ユーザがウェブサイト外部に公開している"/public_html"配下に生成したHTMLファイルを格納

これを30分毎に更新する

 こうする事で僕が普段閲覧しているshitarabaのスレッドは、自宅サーバに保存されるので会社からも見る事ができます。上記のフローは全てをRubyスクリプト内部で行なっているわけではありません。実際にRubyで行なっているのはHTMLの生成までで、それ以後はshellとcronですね。



0 件のコメント:

コメントを投稿