1. 程式人生 > 其它 >md型別檔案遷移至Notion(img資源也可以上傳)

md型別檔案遷移至Notion(img資源也可以上傳)

前言

之前一直使用typora,用起來很不錯,也很方便,唯一存在的問題就是資源多了指揮瀏覽起來會卡頓,mac 使用者,問了其他幾個小夥伴也存在這個問題,而且儲存的圖片不能和md 檔案一起傳送給別人,共享起來也比較麻煩,最近typora又開始收費了,讓我更是放棄了這個軟體。後面經過對比和小夥伴的推薦選擇了notion 但是怎麼把筆記遷移過去成為了一大難題,後面通過耀總的指導找到了用指令碼遷移的方法,圖片也可以遷移過去。

遷移過程

1. 下載指令碼

指令碼GitHub地址 https://developers.notion.com/docs/authorization
指令碼內容

import io
import os.path
import glob
from notion.client import NotionClient
from notion.block import PageBlock
from md2notion.upload import upload
from pathlib import Path

if __name__ == '__main__':
    client = NotionClient(token_v2="獲取notion的token 資訊後面會有方法")
    print(1)
    page = client.get_block(url_or_id="文章上傳的連線地址")
    for fp in glob.glob("/filepath/*.md"):
        try:
            with open(fp, "r", encoding="utf-8") as mdFile: 
                mdStr = mdFile.read()
                mdFile = io.StringIO(mdStr)
                mdFile.__dict__["name"] = fp
                pageName = os.path.basename(fp)[:40]
                newPage = page.children.add_new(PageBlock, title=pageName)
                print(f"Uploading {fp} to Notion.so at page {pageName}")


                def convertImagePath(imagePath, mdFilePath):
                    #return Path(mdFilePath).parent / Path(mdFilePath).stem / Path(imagePath)
                    return Path(mdFilePath).parent /  Path(imagePath)

                upload(mdFile, newPage, imagePathFunc=convertImagePath)
        except Exception as exc:
            print(f"fp:{fp} exc{exc}")
    print(2)

獲取token

文章地址:https://www.redgregory.com/notion/2020/6/15/9zuzav95gwzwewdu1dspweqbv481s5
為了防止以後找不到,所以貼上過來
步驟1
使用Google Chrome,然後登入您的 Notion 工作區。

第2步
右鍵單擊頁面內的任意位置,然後選擇“檢查”。

第 3 步
找到“應用程式”並選擇“Cookies”。在這裡您應該能夠找到“token_v2”。複製旁邊名為“值”的屬性。


notion 使用指南

文章地址:https://sspai.com/post/57464

就這樣~~~