Office365-REST-Python-Клиент подключен, но элементы не отображаются

#sharepoint #office365-rest-client

Вопрос:

Я пытаюсь получить доступ к sharepoint с помощью Office365-Rest. Я использую процесс подключения к приложению, описанный здесь:

https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/security-apponly-azureacs

Я установил разрешения на

 <AppPermissionRequests AllowAppOnlyPolicy="true">
  <AppPermissionRequest Scope=" https://*.sharepoint.com/sites/Engineering/content/tenant" Right="FullControl" />
</AppPermissionRequests>
 

Код на Python:

 import sys
from office365.runtime.auth.client_credential import ClientCredential
from office365.runtime.http.request_options import RequestOptions
from office365.sharepoint.client_context import ClientContext


client_id="*"
client_secret="*"

sp='https://*.sharepoint.com/sites/Engineering/'
client_credentials = ClientCredential(client_id,client_secret)

web = ctx.web.get().execute_query()
print(web.url)

ctx = ClientContext(sp).with_credentials(client_credentials)
list_source = ctx.web.lists.get_by_title("PDF")

items = mylist.get_items().select("ID").top(10)
ctx.execute_query()
for i in items:
    print(i)
 

Моя связь проходит насквозь. Я распечатываю веб-адрес.url. Если я изменяю папку или коды доступа, я получаю ошибки. Однако, что бы я ни пытался получить данные из списков или папок, я никогда не получаю никаких данных.

У меня закончились идеи о том, как тестировать или что делать дальше, буду признателен за любую помощь.

Я пытаюсь получить доступ к 3 элементам, 1 папке с 5000 элементов, 1 списку с 5000 элементов и 1 папке со 100 элементами. Во всех случаях, когда я пытаюсь получить к ним доступ, я ничего не получаю. Я подумал, что с папкой из 100 элементов я должен что-то получить, а затем я мог бы поработать над разработкой кода для просмотра больших списков. Я попробовал следующий пример кода из github, но безрезультатно.

https://github.com/vgrem/Office365-REST-Python-Client/blob/55252191cb7f729f044f61542dca309249c743fc/examples/sharepoint/lists_and_items/read_large_list.py

Мне удалось использовать shareplum для обновления списков, но в настоящее время, похоже, нет обходного пути для более чем 5000 списков, поэтому я надеялся, что это произойдет, как только я получу рабочие данные.

Комментарии:

1. Где определена переменная «mylist»? Кроме того, я думаю, что аргументом select должен быть список (например, select([«ИДЕНТИФИКАТОР»]).