Notion数据库 2/2

Notionopen in new window是一个协作平台,支持修改后的Markdown语法,集成了看板、任务、维基和数据库等功能。它是一个集合了笔记、知识和数据管理以及项目和任务管理的全能工作空间。

NotionDBLoader是一个用于从Notion数据库加载内容的Python类。它从数据库中检索页面,读取其内容,并返回一个Document对象列表。

要求

  • 一个Notion数据库
  • Notion集成令牌

设置

1. 创建一个Notion表格数据库

在Notion中创建一个新的表格数据库。您可以向数据库添加任何列,并将它们视为元数据。例如,您可以添加以下列:

  • 标题:将标题设置为默认属性。
  • 类别:一个多选属性,用于存储与页面关联的类别。
  • 关键词:一个多选属性,用于存储与页面关联的关键词。

将内容添加到数据库中每个页面的正文中。NotionDBLoader将从这些页面中提取内容和元数据。

2. 创建一个Notion集成

要创建Notion集成,请按照以下步骤操作:

  1. 访问Notion Developersopen in new window页面,并使用您的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 数据库中加载内容和元数据。

使用方法

NotionDBLoader 是 langchain 包中的文档加载器的一部分。您可以按以下方式使用它:

from getpass import getpass
NOTION_TOKEN = getpass()
DATABASE_ID = getpass()
from langchain.document_loaders import NotionDBLoader
loader = NotionDBLoader(
    integration_token=NOTION_TOKEN, 
    database_id=DATABASE_ID,
    request_timeout_sec=30 # optional, defaults to 10
)
docs = loader.load()
print(docs)
Last Updated:
Contributors: 刘强