0

我想在 Linux 上使用 Python 以编程方式从 SkyDrive 下载文件。

我不能使用 API,因为它是一个 OneNote 文件,并且API 不能用于下载这些.

我的理解是 SD 支持 Webdav,并且有很多示例人们使用 davfs2 安装了 SD 文件夹,但我只想能够在不安装的情况下获取特定文件。

我可以使用 API 来获取文档所有者的 cid,因此不需要跳过任何基于 Windows 的箍,但是我的 - 可能是蹩脚的,没有真正研究过 webdav - 下载文件的努力总是会出错。

例如使用 easywebdav:

import easywebdav
webdav = easywebdav.connect("d.docs.live.net/mycid")

webdav.download('me/skydrive/Documents/Getting\ Started', '/tmp/foo')
#this gives the 302 error mentioned in the comments at the end of the the 'jumping through windows hoops' link I posted above.

我看到提到的重定向问题有什么解决方法吗?

我有这个错误吗?当访问 webdav 共享上的文件时,将它作为文件系统挂载是有意义的,而且确实是必不可少的?

4

1 回答 1

1

如果您正在下载特定文件,并且已经知道该文件的确切路径/URL(根据您的示例),我不确定您是否真的需要担心 DAV 扩展。您是否尝试过使用简单的 HTTP GET 下载文件,例如urllib2

于 2013-09-11T22:58:34.110 回答