python - 在 Linux 上使用 Webdav 从 SkyDrive 获取文件 *无需* 安装

标签 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 共享上的文件时,将其挂载为文件系统是有意义的,而且确实是必要的?

最佳答案

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

关于python - 在 Linux 上使用 Webdav 从 SkyDrive 获取文件 *无需* 安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18752402/

相关文章:

python - 获取基于字段唯一的对象的查询集 - Django

python - 在图像文件中将特定 RGB 颜色像素更改为另一种颜色

python - "error: ‘remap’ 不是 ‘cv’ 的成员“当使用 python setup.py install

linux - 如何计算远程 git 存储库的总行数

c - 挂起轮询 GPIO

linux - Orgmode 无法为移动组织 "push"向 WebDAV 进行身份验证

php - 使用 DAV 协议(protocol)在 PHP 中上传文件

java - 与客户端 PC 上的 MS Office 通信

python - 为什么这个 makefile 最后会删除两个 .c 文件?

python - 如何修复读取列 MultiIndex 标题行缺少值的 CSV?