Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nekonenene/esa-to-notion-py
notion-py を使って esa → Notion への移行作業
https://github.com/nekonenene/esa-to-notion-py
esa esa-io notion python
Last synced: about 10 hours ago
JSON representation
notion-py を使って esa → Notion への移行作業
- Host: GitHub
- URL: https://github.com/nekonenene/esa-to-notion-py
- Owner: nekonenene
- Created: 2022-01-30T19:28:25.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2022-02-16T15:51:10.000Z (over 2 years ago)
- Last Synced: 2024-01-27T13:41:03.568Z (10 months ago)
- Topics: esa, esa-io, notion, python
- Language: Python
- Homepage: https://nekonenene.hatenablog.com/entry/migrate-esa-to-notion
- Size: 37.1 KB
- Stars: 0
- Watchers: 3
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# esa-to-notion-py
esa → Notion への移行に関して、
https://github.com/nekonenene/esa-dumper-for-notion で esa からエクスポートして
Notion に HTML をインポートするところまでは進められる。このリポジトリではそのインポートが終わった後の、
Notion の各記事の調整をおこなう。感謝: https://scrapbox.io/ci7lus/Notion(%E9%9D%9E%E5%85%AC%E9%96%8B)API%E3%81%A7%E7%94%BB%E5%83%8F%E3%82%92%E3%82%A2%E3%83%83%E3%83%97%E3%83%AD%E3%83%BC%E3%83%89%E3%81%99%E3%82%8B
## 準備
### pipenv
[pipenv](https://pipenv-ja.readthedocs.io/ja/translate-ja/) を使用しています。
```sh
pip install pipenv
```を事前におこなっておくこと。
### .env
```sh
cp default.env .env
```をおこなったあと、 `.env` の設定をおこなう。
Notion の token_v2 の取得方法はこちら参照: https://www.notion.so/How-to-get-your-token-d7a3421b851f406380fb9ff429cd5d47
## 実行
```sh
pipenv shell
```を立ち上げて
```sh
pipenv install
```をおこないます。
### esa にアップロードされた画像を Notion に上げ直し
```sh
python esa-image-to-notion 1234567890abcdef1234567890abcdef
```この実行時に出力される esa_notion_mapping 変数の中身を
`mapping.txt` として保存します。次の工程で使います。### リンクを esa から Notion のものに変換
トップディレクトリに `mapping.txt` を先に用意しておきます。
マッピングにない esa の記事 ID が出てきた場合は URL の変換がおこなわれません。```sh
python esa-link-to-notion 1234567890abcdef1234567890abcdef
```### 階層構造を作成する
https://github.com/nekonenene/esa-dumper-for-notion によって、
インポートしやすいよう1ディレクトリにエクスポートしてから Notion にはインポートした。
ただ、1階層にまとまっていると扱いづらいので階層を分ける。(3階層まで掘る。変更したい場合は MAX_LAYER 定数を変えること)```sh
python adjust-hierarchy 1234567890abcdef1234567890abcdef
```