EvernoteからScrapboxに移行するときに、scrapbox-converterというツールを使えば簡単に移行できるので、その使い方をまとめておきます。
今回は、Windows10のWindows Subsystem for Linux (WSL)、すなわちBash on Windows上でscrapbox-converterを動かします。
※ 記事の最後にも書いてありますが、ありがたいツールではあるものの、現状まだまだな雰囲気を感じるツールです。うまく変換できたらラッキーくらいで試してみるのがいいと思います。
※ どうやらもう少ししたらEvernote XMLからの変換精度がよくなる模様(参考:僕の作ったScrapbox関連ツールの紹介)
npmのインストール
まずはBashを開いてにnpmコマンドをインストールします。すでにインストール済みの場合はこの手順は飛ばしてください。
# nodejsとnpmをインストール $ sudo apt update $ sudo apt install nodejs npm # aptコマンドでインストールされるnodejsとnpmはバージョンが古いので、念のため最新版をインストール $ npm --version 3.5.2 # バージョンが古いことを確認 $ sudo npm cache clean $ sudo npm install n -g $ npm --version 6.4.1 # バージョンが新しくなったことを確認
参考:Ubuntuに最新のNode.jsを難なくインストールする
scrapbox-converterのインストール
npmをインストールしたら、scrapbox-converterをインストールします。
sudo npm install -g scrapbox-converter
GyazoのAPIトークンを取得
Evernote XML (.exml)からjsonへ変換する場合、画像はGyazoにアップロードされるようなので、Gyazoのアカウントを持っていないなら作成しましょう。さらにscrapbox-converterで変換する場合、GyazoのアクセスIトークンが必要になるので、こちらから取得しましょう。
APIトークンを作成する場合、こんな画面に行き着くと思いますが、Nameに任意の文字列、Callback URLの任意のURLを入力します。どうやらCallback URLはURLの形をしてたら存在しないアドレスでも大丈夫っぽいです。(今回は適当にhttp://piyopiyo.comにしましたw)
トークンを作成したら、トークンの詳細からAccess TokenをGenerateできると思うので、Generateしてやります。すると、Your access tokenという部分に文字列が表示されるので、この文字列を控えておきましょう。
Evernote XML (.exml)からjsonファイルへ変換
さて、いよいよscrapbox-converterを動かしましょう。まずは、環境変数にトークンを設定します。
# アクセストークンを見つけられるようにする $ export GYAZO_ACCESS_TOKEN="アクセストークンの文字列"
そして、exmlファイルをjsonへ変換します。
# exmlからjsonへ変換。WSLのBashでは/mnt以下にCドライブとかDドライブがマウントされてる風になってる $ scrapbox-converter /mnt/c/tmp/hogehoge.enex > /mnt/c/tmp/import.json
これでScrapboxでインポートできる形式になりました。
参考:https://github.com/pastak/scrapbox-converter
Scrapboxでインポート
作成したjsonファイルを、ScrapboxのSetting -> Page Data -> Import Pagesから読み込みます。
するとScrapboxにjsonに含まれるページがインポートされます。
感想
このscrapbox-converter、Evernote XMLを一気にjsonに変換できて便利なんですけど、レイアウトの精度はいまいちな気がします。あとは、エラーが出力されて変換できないこともあったので、今後に期待ですかね。
きれいに移行したいなら、1件1件手作業で移行させるのが今のところ一番なんですかね。
コメント