Ruby の WWW::Mechanize のコツが少し分かってきた
ただし WWW::Mechanize 0.8.x + Hpricot 時代のノウハウ。
- オプション一つで取得した HTML とその解析結果のオブジェクトを全ページ保存できるようにしておく
- Logger に吐かれる HTTP のログもひとまとめに扱えるようにしておく
- 保存された情報を穴が開くほどよく見る
- ブラウザではうまくいくけど Mechanize ではダメな場合、HTTP のログはかなり重要なヒントを与えてくれる
以上。
特に mechanize の取得した HTML とその解析結果のオブジェクトを自動で保存しておくようにすると、どこの何の解釈に失敗しているのかを究明するのがだいぶ楽になる。単に Hpricot を使ったときなんかもそうなんだけど、とにかく取得した HTML は即座に保存しておいた方がいいと思う。サーバにも優しいしね。
で、実際これを思ってから2週間後にできあがった、楽できるフレームがこれ。
個人的にはこれ超使える。
More
Recent Posts
- » Gemini Advancedでもうゲームが変わっていた
- » 今さらLLMのモデルの違いとプロンプトエンジニアリングについて
- » Bundler環境でIRBでもLSPでもドキュメントを利用する方法
- » Ruby 3.2と3.3のirb historyの扱いの違いと対処方法
- » Result型とRailway Oriented Programmingをめぐる旅
- » dry-operationのススメとエラー情報をViewまで持っていく方法の模索
- » aligach.netのRubyとViteをバージョンアップした
- » ViteRuby 3.7.0は起動方法のデフォルトがnpx経由になった
- » GmailからSpreadsheetとGoogle Driveへ書き出すGASライブラリを作った
- » 面倒くさがり屋のためのTypeScript環境