読者です 読者をやめる 読者になる 読者になる

サイト全体をローカルに保存する(ミラーリング)

サイト全体をローカルに保存したくなることがまれによくある。そういった場合、wgetだったりWebsite Explorerだったりを使うことがいいのだけど、なかなかうまくいかない事が多い。大体の場合、CSSの中から呼ばれている画像だったりJavascript中に記述されているURLだったりを取りこぼしてしまう。で、いい加減何かないかと探したところ見つけたのがHTTrack。特に新しいわけでもないのだけど今までアンテナに引っかかってなかった。

こいつのすごいところは前述の取りこぼしがちなファイルやらURLをちゃんと読んでくれるし、一々言わなくてもローカルに保存しても切れないようにHTML内のリンクを張り替えてくれるところ。まだ数を使ったわけではないのだけど、かなりいい具合に動いている。気がする。

サイトにはGUI版ももあるのだけど使ってみるとなんだかよくわからないので、ぶっちゃけCUIで叩いたほうが楽な気がする。普通に叩くと目的のドメイン以外のファイルも取りに行ってしまうので、「"+hogehoge.jp"」で取りに行くドメインを制限している。

また、場合にもよるが robots.txt を拒否したいなら「-s0」を追加しておく。ユーザエージェントは「-F "hogehoge"」だ。「-%F ""」を入れていないとダウンロードしたHTMLファイル中にコメントを追加される。詳しい使い方はHttrack Users Guideを参照のこと。

ざっくりhogehoge.jp配下を全部ダウンロードしておきたいのなら以下の様な感じ。
$ httrack.exe "http://hogehoge.jp/" "+hogehoge.jp" -v -s0 -F "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" -%F ""