简单入门:如何从 Microsoft SharePoint 文档库加载文档

69 阅读2分钟

引言

Microsoft SharePoint 是一个基于网站的协作系统,能够帮助企业团队通过工作流应用、列表数据库和其他安全特性实现高效协作。在这篇文章中,我们将学习如何从 SharePoint 文档库加载文档,包括所需的准备工作、代码示例以及可能遇到的问题及解决方案。

主要内容

1. 先决条件

  • 注册应用:按照 Microsoft identity platform 注册指导注册应用程序。
  • 应用程序 ID:从 Azure 门户获取应用程序(客户端)ID,也就是 client ID。
  • 重定向 URI:设置为 https://login.microsoftonline.com/common/oauth2/nativeclient
  • 客户端密码:在应用程序机密部分生成新的密码(client_secret)。
  • 权限范围:为应用添加 offline_accessSites.Read.All
  • 文档库 ID:通过 Graph Explorer 获取文档库 ID。

2. SharePointLoader 认证

使用 SharePointLoader 加载文档时,需设置环境变量 O365_CLIENT_IDO365_CLIENT_SECRET。可以通过 .env 文件或脚本中设置:

import os

os.environ['O365_CLIENT_ID'] = "YOUR CLIENT ID"
os.environ['O365_CLIENT_SECRET'] = "YOUR CLIENT SECRET"

3. 加载文档

通过 SharePointLoader,从特定文件夹或根目录加载文档:

from langchain_community.document_loaders.sharepoint import SharePointLoader

# 使用API代理服务提高访问稳定性
loader = SharePointLoader(document_library_id="YOUR DOCUMENT LIBRARY ID", auth_with_token=True)
documents = loader.load()

若加载特定文件夹内的文档:

loader = SharePointLoader(document_library_id="YOUR DOCUMENT LIBRARY ID", folder_path="Documents/marketing", auth_with_token=True)
documents = loader.load()

代码示例

以下是完整的代码示例,展示如何从 Document Library 加载文档:

from langchain_community.document_loaders.sharepoint import SharePointLoader
import os

# 设置环境变量
os.environ['O365_CLIENT_ID'] = "YOUR CLIENT ID"
os.environ['O365_CLIENT_SECRET'] = "YOUR CLIENT SECRET"

# 实例化 loader
loader = SharePointLoader(document_library_id="YOUR DOCUMENT LIBRARY ID", auth_with_token=True)

# 加载文档
documents = loader.load()

# 打印文档内容
for doc in documents:
    print(doc)

常见问题和解决方案

  • 资源未找到错误:若收到“Resource not found for the segment”错误,请使用目录 ID 而不是路径。
  • 认证失败:确保正确配置了环境变量,并完成用户同意步骤。

总结和进一步学习资源

本文介绍了如何使用 SharePointLoader 从 Microsoft SharePoint 文档库加载文档。你可以参考以下资源来扩展学习:

参考资料

如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!

---END---