WebページをMarkdownとして保存するには、ChromeまたはEdgeでCtrl+Sを押して「ウェブページ、完全」で保存し、そのHTMLファイルをMD Factoryに追加します。アプリがPC上でページを変換し、ページの画像と一緒にMarkdownファイルを保存します。
このガイドは、自分用に保存しておくページ(記事、ドキュメント、レシピ、リファレンスなど)が対象です。スクリプトやビルドの中でHTMLを変換したい場合は、最後のセクションに進んでください。
ChromeまたはEdgeでページを保存する
Chromeでは、Ctrl+Sを押すか、その他メニューから[キャスト、保存、共有]、[名前を付けてページを保存]の順に選びます。手順は次のページにあります: Chromeヘルプ.
Edgeでは、Ctrl+Sを押します。このショートカットは次のページに載っています: Edgeのキーボードショートカット.
[ファイルの種類]の一覧から「ウェブページ、完全」を選びます。どちらのブラウザーにも3つの形式があり、MD Factoryでの扱いはそれぞれ異なります。
| ファイルの種類 | ブラウザーが保存するもの | MD Factoryで得られるもの |
|---|---|---|
| ウェブページ、完全 | HTMLファイルと、同じ名前に_filesが付いたフォルダー(画像が入ります) | テキストと画像 |
| ウェブページ、HTMLのみ | HTMLファイルだけ。画像はWebサイト上に残ります | 画像なしのテキスト(要確認) |
| ウェブページ、単一ファイル | 1つのMHTMLファイル | 何も得られません。MD FactoryはMHTMLファイルを開かず、スキップとして一覧に表示します |
保存したページを変換する
- MD Factoryを開きます。
- ファイルを追加をクリックして保存したHTMLファイルを選ぶか、ウィンドウにドラッグします。
- 変換はすぐに始まります。行に結果が表示されたら、結果のパスをダブルクリックしてMarkdownファイルを開きます。
HTMLファイルが入っているフォルダーではなく、HTMLファイルを追加してください。フォルダーを追加すると、MD Factoryは_filesフォルダーの中も処理します。スクリプト、スタイルシート、画像はスキップとして一覧に表示され、中にあるHTMLファイルは別々のメモとして変換されます。
Markdownファイルにはページの名前が付き、ページの隣に保存されます。使われている画像は、その隣のフォルダーに入ります。
Saved pages/
Sourdough bread.html
Sourdough bread_files/
Sourdough bread.md
Sourdough bread_images/
保存したページと_filesフォルダーはそのまま残ります。Markdownファイルを移動するときは、_imagesフォルダーも一緒に移動してください。Markdownはそのフォルダー内の画像にリンクしています。
Markdownに引き継がれる内容
| ページ上 | Markdown上 |
|---|---|
| 見出し | 同じレベルの見出し |
| 段落、リスト、引用 | 太字と斜体も含めて保持されます |
| コードブロックとインラインコード | コードとして保持されます |
| 表 | Markdownの表 |
| ページと一緒に保存された画像 | PNGファイルとして画像フォルダーにコピーされます |
| リンク | 保持されます(詳細は後述) |
| スクリプト、スタイル、埋め込みフレーム(他のサイトの動画プレーヤーなど) | 削除されます |
| サイトのメニュー、ヘッダー、フッター、サイドバー、Cookieの通知 | 通常のテキストとリンクとして保持されます |
| ブラウザーのタブに表示されるタイトル | 含まれません |
表にヘッダーセルがある場合は、先頭行がMarkdownの表の見出し行になります。ない場合は、アプリが番号付きの列見出しを追加します。結合セルは格子状に展開されます。値は最初のセルに残り、結合されていた他のセルは空になります。
保持される画像
MD Factoryはインターネットから何もダウンロードしません。画像がMarkdownに含まれるのは、そのファイルがPC上にある場合だけです。
- 「ウェブページ、完全」で作られる_filesフォルダー内の画像、
- ページの周りにある他のフォルダー(ページより上の階層も含む)内の画像、
- HTMLコードそのものに埋め込まれた画像。
Webサイト上にしかない画像は含まれず、ファイルは要確認になります。SVG画像は非対応で、これも含まれません。
リンクの扱い
- 完全なWebアドレス、メールリンク、電話リンクは、そのまま残ります。
- 同じサイトの別ページへのリンクなどの相対リンクは、保存したページに元のアドレスが記録されていれば、完全なWebアドレスになります。記録されていない場合は書かれたままになり、リンク先のファイルがMarkdownファイルから見て同じ位置にある場合にだけ機能します。
- 同じページ内のセクションへのリンクは、Markdownでもセクションにアンカーが残るため、そのまま機能します。
- クリックするとスクリプトを実行するリンク(javascript:で始まるもの)は、通常のテキストになります。
メモを整える
MD Factoryはページの本文全体を変換します。どの部分が記事なのかは判断しないので、上部にサイトのメニュー、下部にフッター、関連リンク、Cookieの通知が残ります。不要な部分は削除してください。
ブラウザーのタブのタイトルは含まれません。記事自体の見出しがない場合は、先頭に追加してください。
メモの最初の行に、ページのアドレスと保存した日付を書いておきましょう。後から元のページを探したり、引用するときに出典を示したりできます。
メモをObsidianで管理している場合は、 文書をObsidianに取り込むガイド で、ファイルをVaultに変換して画像のリンクを保つ方法を説明しています。
ページが要確認になった場合
要確認は、Markdownファイルは保存されたものの、ページ上の何かが引き継がれなかったことを示します。処理がすべて終わったら、そのファイルの行のステータスをクリックしてメッセージを確認します。
| メッセージ | 主な原因 |
|---|---|
| 外部の画像またはリソースがスキップされました。 | 画像がWebサイト上にしかありません。たとえば「ウェブページ、HTMLのみ」で保存した場合です。 |
| 画像をエクスポートできませんでした。 | ページが指している画像ファイルが、フォルダーに見つかりません。 |
| 画像フォーマットがサポートされていません。 | アプリが変換できない形式(SVGなど)の画像です。 |
| 一部のドキュメントコンテンツはMarkdownで表現できませんでした。 | ページに埋め込みフレーム(他のサイトの動画プレーヤーなど)があり、削除されました。 |
| ローカルリンクのターゲットを保持できませんでした。 | サイト内の別ページへのリンクを、Webアドレスにも保存済みのファイルにも対応付けられませんでした。リンクのテキストはリンクなしで残ります。 |
| テキストエンコーディングが推測されました。特殊文字を確認してください。 | ページがUTF-8で保存されていないため、アプリがエンコーディングを推測する必要がありました。アクセント付きの文字や記号を確認してください。 |
コードでHTMLを変換する
スクリプトやビルドの手順、スクレイパーでHTMLをMarkdownに変換したい場合、MD Factoryは適していません。MD Factoryはウィンドウから操作するアプリで、コマンドラインもプログラミング用のインターフェースもありません。代わりにライブラリを使ってください。 Turndown は、JavaScriptでHTMLをMarkdownに変換します。Node.jsでもブラウザーでも使え、ライセンスはMITです。 html2text はPythonで同じことを行い、ライセンスはGPL-3.0です。 Pandoc は、HTMLとMarkdownを含む多くの文書形式の間で変換できるコマンドラインのコンバーターです。どれを使う場合も、変換ルールの設定や画像とリンクの処理は自分で行います。
pandoc -f html -t gfm page.html -o page.md