如何使用msgraph-sdk-python将文件上传到onedrive?

gen*_*fly 5 python onedrive microsoft-graph microsoft-graph-sdks

我不是python的新手(也不是专业人士),但这是我第一次尝试这种方法。

我想使用python脚本将文件上传到OneDrive。听起来很简单吧?好吧,显然我可以处理的更多。

从到目前为止我所看到的,我正在使用的onedrive-sdk-python显然不再起作用了(来源:https : //github.com/OneDrive/onedrive-sdk-python/issues/119),因为它已经退役了。

我猜要使用的新SDK是适用于Microsoft Graph的SDK。但是github(https://github.com/MicrosoftArchive/msgraph-sdk-python)并未真正提到如何设置新的Oauth2身份验证,获取令牌并在python中使用客户端。身份验证部分中提到的链接对我不起作用,我收到如下错误消息:“ AADSTS900144:请求正文必须包含以下参数:'client_id'。”

我在stackoverflow上查找了类似的问题,但其中大多数是关于旧的onedrive-sdk的,而我能找到的最新版本已经快三个月了。那里的回应是它仍在开发中。

我想我一直遇到的问题都与Microsoft Graph仍在开发中有关,但是我想知道是否有人设法使其正常工作,以及他们是否可以为我指明正确的方向以进行身份​​验证设置并获得我开始将文件上传到OneDrive。

一些细节,以防万一:

  • 波斯语9拉伸
  • Python 2.7.13和Python 3.5.3(均尝试)
  • OneDrive商业帐户

非常感谢任何能为我指出正确方向的人:)

Mar*_*eur 1

恐怕您正在使用的 SDK 不再得到积极维护。来自自述文件

该库不再受到积极支持。要将 Microsoft Graph 集成到您的 Python 解决方案中,我们建议使用REST并查看我们新的Python 示例和文档

要回答有关令牌的问题,从技术上讲,这些令牌不是由 Microsoft Graph 发行的。它们由 Azure Active Directory(或个人帐户的 Outlook.com)颁发。您使用 OAuth 2.0 获取令牌。

然而,你走在正确的轨道上。在使用 Microsoft Graph 执行任何操作之前,您需要获取 OAuth 令牌。好消息是,有一个示例 Python 项目可引导您完成此过程的工作原理:Microsoft Graph 的 Python 身份验证示例