hakeの日記

Windows環境でプログラミングの勉強をしています。

Hpricotでhtmlの解析 その2

Rubyの勉強

SHOUTcastYouTubeのサイトを解析してみる。とりあえずスゴク簡単にできてしまう。ザウルスだとライブラリの読み込みにちょっと時間がかかるかなとは思うものの、後々にメンテナンスなんかを考えるとソースが簡潔になるメリットは大きいと思います。もうひとつBitWarp経由でhtmlソースを取得すると改行が無くなってしまう問題がありましたがHpricotで解析すれば、この問題も気にしなくて済むようになりますね。


<foo class=bar>はfoo.bar、<foo id=bar>はfoo#barという指定方法が可能みたいなので、各タグの中にclass属性が埋め込まれているYouTubeのソースの方が簡単にできた。SHOUTcastの方は(doc/:html/:body/:table)[10]の様にn番目という方法でタグを指定したけど、もっと良い方法がありそうな気がする。
あと、(doc/:html/:body/:table)とした場合に<head>の直下の<table>タグのみ検索対象になるのかと思ったら、もっと内側?にあるタグまで検索対象になってしうことに気がついた、これは注意が必要。

続きを読む