使用 notion2md 从 notion 导出 markdown
为了用 notion 写公众号,我给 notion2md 提了个 merge 。
前段时间使用 notion 作为笔记,当需要将一篇笔记导出来贴到其他地方,比如公众号的时候,会有一些问题。主要碰到的是自带的一些图片导出的问题。
先说流程:
- 用 notion 写文章或者笔记,将笔记使用 markdown 格式导出
- 使用 Picgo 的图片迁移插件将图片上传到 github
- 利用 markdown 工具格式化后贴到公众号。
notion 导出 markdown
notion 自带的导出 markdown 图片的时候路径上会带有空格,在路径上显示就是 成 %20 ,使用 Picgo 的图片迁移插件会迁移失败。然后不得不手动的去编辑导出的 markdown 文件。
在 github 上发现了项目 notion2md 可以用来导出 notion 的 page 。
可以将 notion 的笔记导出为 markdown 。但是又遇到了另一个问题,在做笔记的时候,截图的图片名是 Untitled.png 。 导出的图片名字重复,导出会被覆盖,最后只剩下一张图片,导出 markdown 文件的地址也是相同 。
看了一下 notion2md 处理文件部分的代码,在 notion2md 的 file 的文件下载代码里面将文件名使用 uuid 重命名来解决,这部分代码已经给作者 echo724 提了个 pr , 预计会在未来的某个版本里面合并。
notion2md
安装
$ pip install notion2md
命令行
1 | $ notion2md -h |
使用
- 先去 notion 创建 token My integrations | Notion Developers
- 在notion 的 page 上点 Share → Invite 选上面创建的 token 的名字。没有授权的化转换会提示 Conld not find block with ID xxxxxxxx 的错误。
[image is not supported]
- 添加 token 的环境变量
export NOTION_TOKEN="{your integration token key}"
- 执行转换命令
notion2md -n post -p ~/MyBlog/content/posts -u https://notion.so/...
如果需要文件重命名的功能,可以使用我 frok 的版本来安装。
添加环境变量export NOTION2MD_UUIDFILE=true
,导出的图片将使用 uuid 重命名。
使用 notion2md 从 notion 导出 markdown