Использование Python и пакетов adal и запросов Я пытаюсь использовать API MS graph для поиска файлов на sharepoint (при указании имени сайта sharepoint, имени папки, в которой должен находиться файл, и имени файла.
Используя различные звонки, я могу сделать следующее
Получить токен аутентификации (используя аутентификацию пользователя для приложения, которое имеет полное разрешение на использование учетных данных пользователей и выполнять все операции чтения / записи для файлов, к которым осуществляется доступ)
установить действительный сеанс
поиск сайтов и получение информации о моем текущем сайте
microsoft_info = SESSION.get('https://graph.microsoft.com/v1.0/sites?search=nameOfSite')
- Получение информации о диске, связанной с сайтом
for site in microsoft_info['value']:
if site['displayName'] == siteDisplayNameInput:
siteId = site['id']
drives = SESSION.get("https://graph.microsoft.com/v1.0/sites/"+siteId+"/drives")
drives = drives.json()
- Получить информацию о файле с интересующего диска
for drive in drives['value']:
if(drive['name']) == folderNameInput:
driveId = drive['id']
files = SESSION.get("https://graph.microsoft.com/v1.0/drives/" + driveId +"/root/search(q='')")
files = files.json()
А затем в пункте 6 все разваливается, и я получаю 404 сообщения об ошибках, говорящих о том, что ресурс не найден - несмотря на использование идентификаторов, предоставленных API, которые четко указывают на наличие ресурса.
if file['name'] == 'Pipeline Pilot Forms.pptx':
print("List of properties on file")
for x in file:
print(x+" "+str(file[x]))
fileId = file['id']
print(fileId)
callToDLFile = SESSION.get("https://graph.microsoft.com/v1.0/drives/"+driveId+"/items/"+fileId+"/content"
, похоже, код, который должен работать для этого (отступ, похоже, не смог скопировать что-то в это, но это все хорошо), но он возвращает 404 ошибки - любая помощь будет принята с благодарностью, я не вижу (в достаточно длительном поиске) все, что точно соответствует этой проблеме.