Python pysmb获取文件夹正确用法

时间:2012-11-04 08:45:01

标签: python python-3.x python-2.7

我有一个我想连接的远程(Windows)服务器,并处理一些文件夹。

我试图使用SMBHandler失败:

director = urllib2.build_opener(SMBHandler)
fh = director.open('smb://myuserID:mypassword@192.168.1.1/Publish')

失败并出现以下错误:

URLError: <urlopen error smb error: Failed to retrieve on Publish: Unable to open file

我编写了以下使用SMBConnection完美运行的代码,但我确信有更好的方法来获取文件夹并查询其子文件夹和文件......

conn = SMBConnection(USERID, PASSWORD, SERVER_NAME, SERVER_NAME, use_ntlm_v2 = True)
conn.connect(SERVER_IP, 139)
filelist = conn.listPath('Publish', '/')
if filelist[5].isDirectory:
    print filelist[5].filename
etc...

你能帮我找到最优雅的方法来解决我的问题吗?

非常感谢:)

尼里

1 个答案:

答案 0 :(得分:0)

pysmb的SMBHandler不允许您通过urllib列出文件夹中的文件。

截至目前,您使用SMBConnection所做的工作是列出文件夹中文件的推荐方式。