使用pysmb重现smb://协议语法

时间:2016-11-29 00:06:23

标签: python smb

我正在尝试使用pysmb将文件保存到网络共享。在osx finder中,我可以通过按cmd+k然后键入smb://my.smb.url.com/folder/subfolder并填写用户名/密码来登录共享。

我正在尝试使用pysmb列出同一位置的内容。这就是我到目前为止所做的:

from smb.SMBConnection import SMBConnection

conn = SMBConnection('username', 'password', 'name', 'my.smb.url.com', 
        sign_options=SMBConnection.SIGN_WHEN_REQUIRED, is_direct_tcp=True)
conn.connect('my.smb.url.com', 445)
shares = conn.listShares()
for s in shares:
    print(s.name)

我希望将'folder'打印为其中一个共享,因为我可以使用finder登录该文件夹。但是,它不是上市股票之一。列出的股票是:

ADMIN$
C$
D$
IPC$
NETLOGON
SYSVOL

以$结尾的那些似乎不可读(调用conn.listPath('C$', '/')会引发异常)。尝试使用/folder/subfolder列出conn.listPath('folder', '/')也会引发异常。

我正在试图弄清楚如何将smb连接字符串中的/folder/subfolder映射到pysmb api。我已尝试直接在SMBConnection构造函数和connect连接调用中包含文件夹名称,但前者不会更改任何内容,后者会导致“名称或服务未知”异常。

0 个答案:

没有答案