使用Python连接到WebDav时出现问题

2024-04-25 05:34:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我以前从未使用过WebDav,但最近我的客户要求我上传一些文件到他的服务器。这个过程应该是自动化的,所以我决定使用python来完成

我的客户以以下格式向我提供了有关服务器的信息:

Server location: \123.456.789.012\Something

Username: user

Password: pass

Domain: somedomain

我尝试使用easywebdav框架来完成这项工作,但是我得到了以下结果: 代码:

webdav = easywebdav.connect(
    host='123.456.789.012/Something',
    username='user',
    port=80,
    protocol="http",
    password='pass'
)

print(webdav.ls())

唯一的例外是

Operation : PROPFIND .

Expected code : 207 Multi-Status, 301 Moved Permanently

Actual code : 401 Unauthorized

我可能无法正确理解所有的事情,因为我已经尝试了多个框架,它们都以相同的方式失败,但是我已经通过macosxwebdav客户端内置的Finder成功地连接到服务器,因此它确实能正常工作。在

我很抱歉的格式的问题,可能缺乏细节,我目前是绝望的几个小时后,试图解决这个问题。请随时在评论中提出任何问题!在


Tags: 文件服务器框架信息客户server过程格式
1条回答
网友
1楼 · 发布于 2024-04-25 05:34:37

找到了解决我问题的方法。在使用Wireshark了解了我的OS X(WebdavFS)连接方式之后,我发现服务器是microsoftis7.5,需要NTLM Auth而不是Basic Auth。没有找到任何支持NTLM AuthPython的Python库,因为应用程序相对较小,所以我使用neon library将其转入C++。在

相关问题 更多 >