wgetのオプションを覚えた
wget -rで再帰的にクロールできるのはみんな知っていると思うけども、同一サーバ内にクロールの必要ない対象があるので特定パス以下だけをクロールしようと思って-npをつけた。
-np, --no-parent 親ディレクトリを取得対象にしない
そしたら、CSSが別途/style/common.cssとかにあったのでレイアウトが崩れてしまった!それをどうやって解決したかというのが今回の日記のお話。
単純にwget http://example.com/style/common.css とかやるとカレントディレクトリにcommon.cssを作ってしまう。そこでまずは-x
-x, --force-directories ディレクトリを強制的に作る
次に、-rでクロールした側が元から相対パスになっててくれたら必要ないんだけど、今回の場合src="/style/common.css"とかになっていたのでこのままではリンク切れになってしまう。-rの時に-kも一緒に指定しておく必要がある。
-k, --convert-links HTML や CSS 中のリンクをローカルを指すように変更する
というわけで少し手間取ったけど、無事にMDNのJavaScriptのところだけ綺麗な形で手元に保管することができました。めでたしめでたし。