LKM*_*KMS 5 python excel sharepoint onedrive
我正在尝试从 OneDrive 位置下载 Excel 文件。我的代码可以正常获取文件,但文件已损坏(我收到错误消息):
import urllib2
data = urllib2.urlopen("enter url here")
with open('C:\\Video.xlsx', 'wb') as output:
output.write(data.read())
output.close()
print "done"
Run Code Online (Sandbox Code Playgroud)
我使用访客访问 Excel 文件,这样我就不必进行身份验证。生成的文件似乎是 15KB,原始文件是 22KB。
小智 6
我得到了它。该 url 的格式如下:
'https://onedrive.live.com/view.aspx?cid=.....app=Excel'
因此,我所要做的就是在该网址将“查看”更改为“下载”,并使用以下代码:
import urllib.request
url = 'https://onedrive.live.com/view.aspx?cid=.....app=Excel'
urllib.request.urlretrieve(url, "test.xlsx")
Run Code Online (Sandbox Code Playgroud)
您不能直接使用 URL 从 OneDrive 下载 Excel 文件。即使您在未经任何授权的情况下共享文件,您可能仍然会获得中间 HTML 页面的链接,而不是 Excel 二进制文件本身。
要从 OneDrive 下载项目,您首先需要进行身份验证,然后传递所需文件的位置。您可能想要使用 OneDrive REST API。OneDrive 的 Python SDK GitHub 页面上记录了有关如何执行此操作的详细信息,并提供了一些示例来帮助您入门。