HTMLページを1つのファイルとして保存/アーカイブできるようにしたい(厄介な外部フォルダーなしで)。
結果のファイルにすべてのスタイル、画像、リンクを含めたいです(ビデオとFlashもいいでしょうが、それほど重要ではありません)。
結果のファイルを検索および編集できるようにしたいのですが。
MicrosoftのMHTはそのようなツールの1つですが、残念ながらLinuxでは検索できません。 MHTは良いですが、1つのオペレーティングシステムまたは1つの会社にロックされたくありません。良い代替案は何ですか?あるいは、私が考えていなかったいくつかの完全に異なるソリューションがあるでしょうか?
よろしくお願いします!
Googleの現在のバージョンでのMHTMLファイルの表示と作成Chromeは、chrome:// flagsページの[MHTMLとしてページを保存]オプションを切り替えることでサポートされます。
uRLボックスにchrome:// flagsと入力します
ただし、この実験的なオプションを有効にすると、ページをHTML専用ファイルまたはHTML完全ファイルとして保存することが無効になります。 chrome:// flagsページから:
SingleFile chrome extension は良い解決策です。
私はまた、この問題を解決するための独自のpythonツールを作成しました。これを試してみることをお勧めします: https://github.com/zTrix/webpage2html
ZTrixの答えを拡張して、Chrome拡張機能(私にはまったく機能しなかった)を避け、代わりに次のオプションのいずれかを使用することをお勧めします。
npm
を使用して簡単にインストールあなたはこのツールを使うことができます: https://github.com/Y2Z/monolith 、それはあなたが必要としていることを正確に行っているようです。
Chromeのプログラムから直接作成されたブラウザ拡張機能もあり、ここで見つけることができます: https://chrome.google.com/webstore/detail/monolith/koalogomkahjlabefiglodpnhhkokekg
通常、彼のすべての共通の子ファイル(css、jpg、js、svgなど)を含む1つのHTMLファイルを作成することが可能です。
「src
」属性の値、「url()
」関数を置き換え、JavaScriptファイルの「_<script></script>
_」のようなHTMLタグを挿入して、HTMLファイルを書き直す必要があります、CSSファイルの場合は「_<style></style>
_」、SVG画像の場合は「_<svg></svg>
_」。
たとえば、 "url()
"関数によって呼び出されるCSSのGIF画像ファイル。
url('https://en.wikipedia.org/wiki/File:TPB_Magnet_Icon.gif')
」を「url('data:image/gif;base64,R0lGODlhDAAMALMPAOXl5ewvErW1tebm5oocDkVFRePj47a2ts0WAOTk5MwVAIkcDesuEs0VAEZGRv///yH5BAEAAA8ALAAAAAAMAAwAAARB8MnnqpuzroZYzQvSNMroUeFIjornbK1mVkRzUgQSyPfbFi/dBRdzCAyJoTFhcBQOiYHyAABUDsiCxAFNWj6UbwQAOw')
」で置き換え、Base_64でエンコードされたGIF画像に接頭辞「_data:image/gif;base64,
_」を付けたもの"src
"属性の値に対しても同じことができます。このソリューションは、他のバイナリファイルに使用できます。エンコードされたオブジェクトに対応するように、正しい「data
」プレフィックスを適合させる必要があります。