『webページ内の画像をぶっこぬきたい!!』
という時には、webアーカイブ形式で保存して、『textutil -convert html ファイル名.webarchive』で分解してあげるとちょっと楽。
(POE-FACTORY/ぽぽか様サイトより)
というのも、ふとブックマークを整理していたらしばらく見ていなかった、とあるドールのクリエイターの方のサイトをさしぶりに拝見したのがきっかけ。
もう非常に美しくて、シルバニアファミリーとか子供の時に憧れていた身としてはなんかこうビネット的なあれそれがたまらない感じで、しかも可愛いドールとなっちゃぁ素通りできねぇってぇもんだなぁ〜!!
しかしお値段が非常に私には無理無理の無理なレベルだったので、いつか株を買って20000倍くらいになって借金返して羽毛布団を買える様になったら、いつかいつか…!!と窓越しにトランペットよろしく憧れていたのです。
しかし、あれ?更新がしばらく止まっていて…ところどころ画像が切れてる…。
こ、これはいけませんよ。これはよくある『あの大好きだった絵師さんのサイトがなくなってるし全部消されてもう見れないよぉ〜』というパターン!!ゲームの攻略サイトなどが一斉に消えてしまった過去!!その前兆!!
というわけで、素敵な画像だけでもダウンロードさせていただこうと思った次第です。
ただページ数が多いので…でもスクレイピングで組むほどではないので、しかも画像がサムネールじゃなくてオリジナルサイズを縮小掲載しているものだったので、今回は『webarchive方式でページを保存し、それを分解する』という方式をとりました。
今回のやり方はMac Safariです。chromeでも同じかも。最後はlinuxコマンドを使うので、windowsの方は別のコマンドを探さないといけないかも。
とにかくまずは保存。
上の画像では別名保存のショートカットにShiftが必要そうになってますが、多分これはスクショを撮るときの影響です。フツーに『command + s』で保存できます。
最初の1ページ目だけしっかり確認。フォーマットをwebアーカイブ形式にします。
あとはターミナルで、
textutil – convert html ファイル名.webarchive
とするだけ。
すると画像が元の状態で抜き出せました。
これを150ページくらいするのですが、各ページへのリンクを別タブで開くのは『command + クリック』、保存は『command + s』、保存ずみのタブを閉じるには『command + w』をもちろん使って行きます。
10タブくらい開いたら、保存して閉じる〜をショートカットでガシガシ。
全てのページをwebアーカイブ形式で保存するのに10分かかったかな?くらいでした。
そして最後はワイルドカードを使って分解です。ちょっと時間がかかります。
こちらのサイトはファイル名がカメラのルールに従ってでしょうがシーケンシャルになっていて、重複っぽくなかったのでワイルドカードで一気に処理できましたが、もし重複があれば多分強制上書きになってしまうと思います。注意!!
こんな感じで、画像を1個1個右クリック保存しなくてもなんとかなったのでした。
もし本当に大量の画像があれば、pythonやらphpでスクレイピングしちゃうのがいいんでしょうが、そこまでじゃない時は使えるかなと思っての備忘録。