在Linux上使用Webdav从SkyDrive *获取文件而不安装*

时间:2013-09-11 22:34:05

标签: python linux webdav onedrive

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

我无法使用API​​,因为它是OneNote文件和the API can't be used to download these

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

我可以使用API​​来获取文档所有者的cid所以不需要jump through any windows based hoops但我的 - 可能很蹩脚,还没有真正研究过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共享上的文件时,将它作为文件系统挂载是有意义的,而且确实是必不可少的?

1 个答案:

答案 0 :(得分:1)

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