OneNote 加载文档。
先决条件
- 按照 Microsoft 身份平台 的说明注册一个应用程序。
-
注册完成后,Azure 门户会显示应用注册的概述页面。你将看到应用程序(客户端)ID。也称为
client ID,此值在 Microsoft 身份平台中唯一标识你的应用程序。 -
在 步骤 1 中,你可以将重定向 URI 设置为
http://localhost:8000/callback。 -
在 步骤 1 中,在“应用程序密码”部分生成一个新密码(
client_secret)。 -
按照此文档的说明,将以下
SCOPES(Notes.Read)添加到你的应用程序中。 -
你需要使用命令
pip install msal和pip install beautifulsoup4安装 msal 和 bs4 包。 -
完成这些步骤后,你必须获得以下值:
CLIENT_IDCLIENT_SECRET
🧑 从 OneNote 提取文档的说明
🔑 身份验证
默认情况下,OneNoteLoader 期望 CLIENT_ID 和 CLIENT_SECRET 的值必须存储为名为 MS_GRAPH_CLIENT_ID 和 MS_GRAPH_CLIENT_SECRET 的环境变量。你可以通过应用程序根目录下的 .env 文件或在脚本中使用以下命令传递这些环境变量。
~/.credentials/ 文件夹中存储一个令牌(onenote_graph_token.txt)。该令牌可用于后续的身份验证,无需重复之前所述的复制/粘贴步骤。要在实例化加载器时使用此令牌进行身份验证,你需要将 auth_with_token 参数更改为 True。
🗂️ 文档加载器
📑 从 OneNote 笔记本加载页面
OneNoteLoader 可以加载存储在 OneDrive 中的 OneNote 笔记本页面。你可以指定 notebook_name、section_name、page_title 的任意组合,以分别筛选特定笔记本下、特定分区下或具有特定标题的页面。例如,你想加载存储在任意笔记本 OneDrive 中名为 Recipes 分区下的所有页面。
📑 从页面 ID 列表加载页面
另一种方法是提供要加载的每个页面的object_ids 列表。为此,你需要查询 Microsoft Graph API 以找到你感兴趣的所有文档 ID。此链接提供了一系列有助于检索文档 ID 的端点。
例如,要检索存储在笔记本中的所有页面的信息,你需要向以下地址发送请求:https://graph.microsoft.com/v1.0/me/onenote/pages。一旦你获得了感兴趣的 ID 列表,就可以使用以下参数实例化加载器。
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

