首页 > 解决方案 > 如何使用 Python 在 SharePoint 的文档库中访问文件和文件夹

问题描述

我正在使用 Python 访问 SharePoint 文档库中的文件和文件夹。我已经使用 pip 安装了 Office365-REST-Python-Client 包。我的代码如下:

from office365.runtime.auth.authentication_context import AuthenticationContext
from office365.sharepoint.client_context import ClientContext
from office365.sharepoint.files.file import File 
import  sys

url_shrpt = 'https://<mysharepoint>/sites/spsite_1/'
folder_url_shrpt = '/sites/spsite_1/dl_1'

app_principal = {
'client_id': '<my client id>',
'client_secret': '<my client secret>',
}

ctx_auth = AuthenticationContext(url_shrpt)

if ctx_auth.acquire_token_for_app(client_id=app_principal['client_id'], client_secret=app_principal['client_secret']):
    ctx = ClientContext(url_shrpt, ctx_auth)
    web = ctx.web
    ctx.load(web)
    ctx.execute_query()
    print('Authenticated into sharepoint app for: ',web.properties['Title'])

    list_object = ctx.web.lists.get_by_title('dl_1')
    list_object_items = list_object.items
    ctx.load(list_object_items)
    ctx.execute_query()
    print(f'len(list_object_items): {len(list_object_items)}')

else:
    print(ctx_auth.get_last_error())
    sys.exit()

虽然我在文档库中有文件夹和文件,但 len(list_object_items) 返回 0。输出如下:

Authenticated into sharepoint app for:  spsite_1
len(list_object_items): 0

请让我知道我错在哪里以及我需要调查的地方。

标签: pythonsharepoint

解决方案


推荐阅读