vorfee's Tech Blog

Just another tech blog

インターネット上のウェブページをオフライン保存する方法

いつ消えるかわからないウェブページを手元に保存するための方法をメモ。

結論

Google Chromeを使用して MHTML 形式で保存するのが最適である。

MHTMLで保存する方法はこの記事の下のほうにある。

ウェブページ保存するにあたっての要件

様々な保存形式から適切なものを選ぶために、いくつかの要件を決めておく。

〈ウェブページを保存する際の4つの要件〉

  1. 表示が崩れない
  2. リンクがクリックできる
  3. 検索可能である
  4. 保存が簡便

「1.表示が\崩れない」は当然である。保存したものが読めなくなっていては意味がない。「2.リンクがクリックできる」は定義が難しいが、とりあえず元のURLリンク情報を保持していれば良いものとする。「3.検索可能である」が最も重要な事項である。これができなければ保存する行為そのものが自己満足で終わってしまう。「4.保存が簡便」も重要である。変換や特別な処理を施すことなく、一つのファイルに保存できるのが望ましい。

これらの要件に優先順位はなく、すべて満たすもののみが最適解とする。

検証する保存形式

いくつかの保存形式を要件に沿って評価する。

〈ウェブページを保存する形式〉

  1. 画像
  2. PDF
  3. HTML
  4. MHTML

最適な保存形式

4つの保存形式を検証すると以下のようになった。

保存方法 表示崩れしない リンク 検索 簡便
画像 × × × ×
PDF ×
HTML ×
MHTML

画像とPDFは表示が崩れないかと思いきや、javascriptで制御されたページ内のコンテンツを閲覧できなくなった。これでは情報量が減ってしまうので保存に適さない。

HTMLはページ内にリンクされた画像やスクリプトをバラバラに保存する。ファイルの管理が簡便ではなく、場合によっては検索の妨害にもなりうるため保存に適さない。

MHTMLはひとつのファイルにひとつのウェブページのファイルすべてを保存する。MHTMLではすべての要件を満たすことができたため、今回の要件ではMHTMLが最適であった。

MHTMLで保存する方法

Google Chrome以外のブラウザでもMHTMLで保存する方法は存在する。ここではGoogle Chromeだけ紹介する。

  1. Google Chromeのアドレスバーに chrome://flags を入力
  2. 試験運用機能が開いたら「MHTML としてページを保存」の項目を探す(ページ内を mhtml で検索する)
  3. 「MHTML としてページを保存」を有効にして、Google Chromeを再起動する
  4. Ctrl + s でページの保存をするときに拡張子が .mhtml のファイルで保存できれば完了

MHTMLを開く方法

Google ChromeがインストールされたコンピュータでMHTMLファイルをダブルクリックすれば開くことができる。

なおInternet ExplorerでもMHTMLを開くことができる。ただしMicrosoft EdgeではMHTMLファイルを開くことができない