跳至主要內容
Open In ColabOpen on GitHub

Notion DB 2/2

Notion 是一個協作平台,具有修改過的 Markdown 支援,整合了看板、任務、Wiki 和資料庫。它是一個用於筆記、知識和資料管理以及專案和任務管理的一體化工作區。

NotionDBLoader 是一個 Python 類別,用於從 Notion 資料庫載入內容。它從資料庫檢索頁面,讀取其內容,並傳回 Document 物件的清單。 NotionDirectoryLoader 用於從 Notion 資料庫傾印檔載入資料。

需求

  • 一個 Notion 資料庫
  • Notion 整合權杖

設定

1. 建立 Notion 表格資料庫

在 Notion 中建立新的表格資料庫。您可以將任何欄位新增至資料庫,它們將被視為元資料。例如,您可以新增以下欄位

  • 標題:將標題設定為預設屬性。
  • 類別:用於儲存與頁面關聯的類別的多選屬性。
  • 關鍵字:用於儲存與頁面關聯的關鍵字的多選屬性。

將您的內容新增至資料庫中每個頁面的主體。NotionDBLoader 將從這些頁面中擷取內容和元資料。

2. 建立 Notion 整合

若要建立 Notion 整合,請依照下列步驟操作

  1. 造訪 Notion 開發人員 頁面,並使用您的 Notion 帳戶登入。
  2. 按一下「+ 新增整合」按鈕。
  3. 為您的整合命名,並選擇您的資料庫所在的工作區。
  4. 選取必要的授權,此擴充功能僅需要「讀取內容」授權
  5. 按一下「提交」按鈕以建立整合。建立整合後,您將獲得一個 整合權杖 (API 金鑰)。複製此權杖並妥善保管,因為您需要它才能使用 NotionDBLoader。

3. 將整合連線至資料庫

若要將您的整合連線至資料庫,請依照下列步驟操作

  1. 在 Notion 中開啟您的資料庫。
  2. 按一下資料庫檢視右上角的三點選單圖示。
  3. 按一下「+ 新增整合」按鈕。
  4. 尋找您的整合,您可能需要在搜尋方塊中開始輸入其名稱。
  5. 按一下「連線」按鈕以將整合連線至資料庫。

4. 取得資料庫 ID

若要取得資料庫 ID,請依照下列步驟操作

  1. 在 Notion 中開啟您的資料庫。
  2. 按一下資料庫檢視右上角的三點選單圖示。
  3. 從選單中選取「複製連結」,將資料庫 URL 複製到剪貼簿。
  4. 資料庫 ID 是 URL 中找到的長串英數字元。它通常看起來像這樣:https://www.notion.so/username/8935f9d140a04f95a872520c4f123456?v=.... 在此範例中,資料庫 ID 為 8935f9d140a04f95a872520c4f123456。

有了正確設定的資料庫,以及整合權杖和資料庫 ID,您現在可以使用 NotionDBLoader 程式碼從您的 Notion 資料庫載入內容和元資料。

5. 安裝

安裝 langchain-community 整合套件。

%pip install -qU langchain-community

Notion 資料庫載入器

NotionDBLoader 是 langchain 套件文件載入器的一部分。您可以如下使用它

from getpass import getpass

NOTION_TOKEN = getpass()
DATABASE_ID = getpass()
········
········
from langchain_community.document_loaders import NotionDBLoader
API 參考:NotionDBLoader
loader = NotionDBLoader(
integration_token=NOTION_TOKEN,
database_id=DATABASE_ID,
request_timeout_sec=30, # optional, defaults to 10
)
docs = loader.load()
print(docs)

Notion 目錄載入器

設定

從 Notion 匯出您的資料集。您可以透過按一下右上角的三個點,然後按一下 匯出 來執行此操作。

匯出時,請務必選取 Markdown & CSV 格式選項。

這將在您的「下載」資料夾中產生一個 .zip 檔案。將 .zip 檔案移動到此儲存庫中。

執行以下命令以解壓縮 zip 檔案(根據需要將 Export... 替換為您自己的檔案名稱)。

unzip Export-d3adfe0f-3131-4bf3-8987-a52017fc1bae.zip -d Notion_DB

用法

執行以下命令以擷取您剛下載的資料。

from langchain_community.document_loaders import NotionDirectoryLoader

loader = NotionDirectoryLoader("Notion_DB")
docs = loader.load()

此頁面是否有幫助?