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

2024-06-16 10:43:25 发布

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

我正在尝试使用pysmb将文件保存到网络共享。在osxfinder中,我可以通过按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登录到该文件夹。不过,它不是上市股票之一。所列股份为:

^{pr2}$

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

我正试图找出如何将smb连接字符串中的/folder/subfolder映射到pysmbapi。我尝试过将文件夹名称直接包含在SMBConnection构造函数中,并包含在connect调用中,但前者不会更改任何内容,后者会导致“name or service not known”异常。在


Tags: name文件夹comurl内容myconnectfolder