エンハンスの仕事を行う際に作業ベースとなるファイルを「現行本番からファイル一式を取得して作業してください」となるケースがたまにあります(少なくともうちの会社は…)。
ググるとwgetコマンドを使用してサイト全体のファイルを取得する方法はよく見つかるのですが、大手サービスのサイトだったりするとサイト全体のファイルを取得しようとするとページ数が膨大すぎて(数万ページとか)とてもじゃないけれど取得していられません。
そこで取得したい1ページと、そのページで読み込まれているCSS/JS/画像ファイル等のみをピンポイントで取得する方法をご紹介します。またPCページだけではなく、TABやSPのページを取得する方法も合わせてご紹介します。
wgetを使う
wgetとは
ファイルをFTPサーバーやWebサーバーからダウンロードする為のコマンドです。
wgetのインストール
ここらへんを参照
http://kengo92i.hatenablog.jp/entry/2014/09/01/173547
ファイルを取得
任意のページのHTMLファイルとそのHTMLファイルで読み込まれているCSS/JS/画像ファイル等を取得します。
オプション「-p」を使用します。
wget -p http://example.com/fuga.html
これだけで取得可能です。
SPサイトやTABサイトのページのファイルを取得
前述の方法ではPCサイトのファイル一式しか取得できません。
wgetコマンドでは「--user-agent」オプションを使用する事でSPサイトやTABサイトのファイル一式も取得できます。
指定するUAは下記サイトで確認できます。
http://www13.plala.or.jp/bigdata/user_agent.html
下記の例はiPhone iOS9.1の場合です。
wget -p --user-agent="Mozilla /5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B5110e Safari/601.1" http://example.com/fuga.html
以上です。