Sharepoint аутентификация с помощью Python - PullRequest
0 голосов
/ 26 апреля 2019

Я пытаюсь использовать python для загрузки файла Excel, который размещен на sharepoint, который является частью платформы Microsoft Azure . Я попытался получить файл с помощью HTTPforhumans request, выполнив:

r = requests.get(url)

Но мои запросы продолжают отклоняться (r.status_code возвращает 200), потому что мне нужно войти в действительную учетную запись, прежде чем пытаться получить доступ к файлу. У меня есть действительная учетная запись и пароль, и я могу получить доступ к своей учетной записи и к файлу Excel через браузер. Но я понятия не имею, что делать с процедурой аутентификации Azure. И, видимо, это не так просто, как просто:

auth = HTTPBasicAuth('email@somewhere.com', 'pass1234')
r = requests.post(url=url, auth=auth)

Я понимаю, что есть поток, которому нужно следовать, но когда я пытаюсь прочитать документацию, он просто идет мне в голову (я инженер, и у меня нет опыта в такой среде).

Может кто-нибудь подсказать мне, как войти в систему и скачать файл?

1 Ответ

1 голос
/ 28 апреля 2019

Попробуйте O365 rest python client библиотека .it поддерживает аутентификацию SharePoint Online и позволяет загружать / выгружать файл, как показано ниже: Пожалуйста, найдите код здесь:

ctx_auth = AuthenticationContext(url)
ctx_auth.acquire_token_for_user(username,password)   
ctx = ClientContext(url, ctx_auth)
response = File.open_binary(context, "/Shared Documents/User Guide.docx")
with open("./User Guide.docx", "wb") as local_file:
    local_file.write(response.content)

Вы можете скачать последнюю версию, используя приведенную ниже команду

pip install git+https://github.com/vgrem/Office365-REST-Python-Client.git

Для получения дополнительной информации, пожалуйста, посетите ссылку

надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...