Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nekonenene/esa-dumper-for-notion
Export posts and comments of esa in order to import to Notion
https://github.com/nekonenene/esa-dumper-for-notion
esa esa-io notion ruby
Last synced: about 7 hours ago
JSON representation
Export posts and comments of esa in order to import to Notion
- Host: GitHub
- URL: https://github.com/nekonenene/esa-dumper-for-notion
- Owner: nekonenene
- Created: 2022-02-15T20:14:10.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-02-15T22:08:17.000Z (over 2 years ago)
- Last Synced: 2024-01-27T13:40:28.121Z (10 months ago)
- Topics: esa, esa-io, notion, ruby
- Language: Ruby
- Homepage: https://nekonenene.hatenablog.com/entry/migrate-esa-to-notion
- Size: 9.77 KB
- Stars: 2
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# esa Dumper for Notion
[esa](https://esa.io) → [Notion](https://www.notion.so) への移行作業をするにあたって、
Notion のインポートは、 **1フォルダ内に HTML ないしはマークダウンファイルをまとめていないと一度におこなえない** という
つらい仕様があったので作成しました。(今後 zip ファイルをアップロードできるなどいい感じになってほしい……)各記事と、それに紐づくコメントをまとめて HTML とマークダウンの両方で出力します。
Notion へのインポートには HTML を使うのがおすすめです。
(Notion のマークダウンインポートは GitHub Flavored Markdown として解釈しないため、改行やリンクなどが無くなる)もしくは、GitHub Flavored Markdown を解釈しつつ HTML に変換するライブラリを使って、
マークダウンを HTML に変換してからインポートするという手もあります。試していないですが、そっちの方がより正確かも。## 使い方
```sh
cp default.env .env
```をおこなったあと `ESA_TEAM_NAME` に `.esa.io` の teamname の部分を、
`ESA_ACCESS_TOKEN` に esa のパーソナルアクセストークンを設定します。(READ権限だけで大丈夫です)あとは
```sh
bundle install
```をおこなって依存ライブラリをインストールしたあと、
```sh
bundle exec ruby main.rb
```をおこなえば完了です。 `export` ディレクトリにファイルが出力されます。
## 注意事項
esa は特に連絡をしない限り、APIの利用制限が15分に75リクエストまでとなっていますので、
記事合計数が 7500 を超えている場合は途中で Too Many Requests エラーが起こってしまいます。参照: https://docs.esa.io/posts/102#%E5%88%A9%E7%94%A8%E5%88%B6%E9%99%90
制限緩和のリクエストを esa のサポートにおこなうか、
何ページ目から始めるかを、以下のように引数で指定するとよいでしょう。```sh
bundle exec ruby main.rb 10
```