KibelaからNotePMへデータ移行するための方法と、プログラムの使い方を紹介します。
- データ移行スクリプト対応サービス
目次
Kibelaからのデータエクスポート
Kibelaの設定にエクスポートがあります。その中にエクスポートボタンがあります。
エクスポートボタンを押すと、エクスポートがリクエストされます。そして、ダウンロード準備ができるとメールが届きます。
メールにあるZipファイルのリンクを押すとデータがZipファイルでダウンロードできます。
エクスポートデータについて
エクスポートされたデータの形式は次のようになっています。
- attachments
ノートやコメントに付けた画像や添付ファイルが入っています - notes
ノートがフォルダ構成を維持した形でMarkdownファイルとして入っています
データのインポート
ではここからエクスポートしたデータをNotePMへ取り込む手順を紹介します。まず、プログラムをインストールします。必要なものは次の通りです。
- Node.js
- プログラムのインストール
- アクセストークンの取得
- 設定ファイルの作成
Node.jsのインストール
Node.jsはここからダウンロードできます。ダウンロード後、インストールを実行してください。
プログラムのインストール
プログラムはNode.jsをインストールした環境であれば、次のコマンドでインストールできます。
npm install notepm_importer -g
プログラムはMIT Licenseで公開しています。コードはNotePMMania/notepm_importer: 各種ドキュメント共有サービスからNotePMへ移行するスクリプトにて公開しています。
アクセストークンの取得
NotePMのアクセストークンは個人設定のAPIアクセストークンから取得できます。
そしてアクセストークンを新規作成してください。スコープとして、読み込みと書き込みの両方にチェックを付けてください。
生成されたアクセストークンは、再確認する方法はありません。必ずコピーしたり控えておいてください。
設定ファイルの作成
Kibelaのエクスポートデータにはユーザ名などの情報がありません。ユーザID(英数字)のみしかありません。そこで、KibelaのユーザIDとNotePMの紐付けを行います。ベースになる設定ファイルは次のように出力できます。
notepm-users -a ACCESS_TOKEN -t TEAM_DOMAIN
- ACCESS_TOKEN
先ほど作成したNotePMのアクセストークンです - TEAM_DOMAIN
NotePMのチームドメインです(例:notepm)
実行すると、次のようにYAMLファイルの内容が出力されます。
:-:: プロジェクト太郎: "0000000001"-:: プロジェクト花子: "0000000002"
この内容をたとえば users.yaml として保存します。その後 id
の後にKibelaのユーザIDを記入してください。たとえば次のような内容にします。頭に@が必要です。
:-: "@taro": プロジェクト太郎: "0000000001"-: "@hanako": プロジェクト花子: "0000000002"
これで準備完了です。
インポートを実行する
ではインポートを実行します。コマンドは次のようになります。
notepm-kibela \-p PATH_TO_EXPORT_DIR \-a ACCESS_TOKEN \-t TEAM_DOMAIN \-u PATH_TO_SETTING_YAML
内容は次の通りです。
- PATH_TO_EXPORT_DIR
KibelaからエクスポートしたZipファイルを解凍(展開)したディレクトリのパスです - ACCESS_TOKEN
先ほど作成したNotePMのアクセストークンです - TEAM_DOMAIN
NotePMのチームドメインです(例:notepm) - PATH_TO_SETTING_YAML
先ほど作成した設定ファイル(YAML)のパスです
ノートについて
KibelaのグループがNotePMのノートとして作成されます。複数グループに所属している記事は複数のノートにインポートされます。
フォルダについて
ルートディレクトリ直下にあるフォルダはノートとして保存されます。サブフォルダは各ノートの中に保存されます。ノートのデフォルト値は下記になります。
項目 | 値 |
---|---|
ノートの説明 | 固定「Kibelaからインポートしたノートです」 |
スコープ | 固定「プライベート」 |
グループ | 設定しません |
アイコン | 設定しません |
すべてのノートはプライベートで取り込みます。調整後、公開してください。
記事について
Markdownはメタデータが追加されたものになります。各記事は次のように保存されます。
Kibelaの項目 | NotePMへの適用 |
---|---|
author | ページの作成者として利用します |
folder | フォルダを作成します |
groups | ノートの名前として利用します |
published_at | ページの作成日時として利用します |
id | 利用しません |
path | 利用しません |
contributors | 利用しません |
coediting | 利用しません |
updated_at | 利用しません |
archived_at | 利用しません |
comments | コメントとして利用します(後述) |
コメントはさらに次のように展開されます。
Kibelaの項目 | NotePMへの適用 |
---|---|
id | 利用しません |
path | 利用しません |
author | コメントの作成者として利用します |
published_at | コメントの作成日時として利用します |
updated_at | 利用しません |
content | コメント本文として利用します |
Markdownコンテンツはページ本文として利用します。また、最初の一行目はページタイトルとして利用します。
注意点
データのインポート時の注意点は次の通りです。
- ユーザ情報がない(または特定できない)ページは NotePM-bot として処理されます。
- 添付ファイルも画像リンクとして処理されます。取り込み直後はリンク切れに見えますが
![]()
を[]()
の形式に変更してください。 - ページ内リンクは移行しません
- グループの参加者情報は移行しません
コード
おすすめの情報共有ツール
- NotePM :テレワーク時代のクラウド型ナレッジ共有ツール