ryotatake blog

Webエンジニア

EvernoteのデータをInkdropにインポートできるように加工する

最近Evernoteが使いづらく感じるようになったのでInkdropに移行しました。

Evernoteで管理していたノートをInkdropに移したのですが、Evernoteからエクスポートした際に出力されるHTMLが不正なため、そのままInkdropにインポートすると表示が崩れてしまいました。
できる限りEvernote側での表示を保った状態でInkdropに移行できるよう、HTMLを変換する処理を書いたので、今後同様の対応をされる方向けに共有します。

どなたかのお役に立てば幸いです。

Evernoteからのエクスポート

現時点(2021年3月時点)では最新のEvernoteにHTMLでのエクスポート機能がついていません。

Legacy Versionを使うとHTMLでエクスポートが可能です。

エクスポートしたHTMLファイルをInkdrop用に処理

sedを使って処理しました。

以下の内容を例えば~/tmp/html_format_evernote_to_inkdrop.sedに保存します。

そしてEvernoteからエクスポートしたHTMLファイルを一括で処理します。

# bashの場合
cd export_dir/
ls *.html | sed 's/\( \| \)/\\\1/g' | xargs sed -i -rf ~/tmp/html_format_evernote_to_inkdrop.sed

こうして置換したHTMLファイルをInkdropにインポートすれば、Inkdropでプレビュー表示をした際にEvernoteでの見た目をある程度保った状態になるかと思います。

注意

このスクリプトEvernoteでの出力に完全に対応できているわけではありません。私が作ったノートは上手く移行できるようにしましたが、ノートの内容によっては上手くいかないケースがあると思います。
その場合は変になっているものだけ個別で対応するか、スクリプトを修正してご利用ください。

また、今後Evernote側で出力されるHTMLの形式が変わると正しく動かなくなる可能性があります。