我的web应用程序如何使用python修改windows共享网络上的文件?

2024-10-02 08:21:30 发布

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

我需要我的web应用程序修改windows共享网络上的xml文件。到目前为止,我已经能够通过smb(pysmb)连接到共享网络,但是随后使用Python和xml.etree.ElementTree文件图书馆。到目前为止,我有以下代码:

try:
    conn = SMBConnection(user, password, host_name, host, domain=domain_name, use_ntlm_v2=True)
    conn.connect(ip_address, 139)

    if conn:
        shares = conn.listShares()

        for share in shares:
            if not share.isSpecial and share.name not in ['NETLOGON', 'SYSVOL']:
                if str(share.name) == 'folder1':
                    sharedDirs = conn.listPath(share.name, 'folder2')
                    print('this is sharedDirs ', str(sharedDirs));
                    for s in sharedDirs:
                        print('this is a sharedDIR: ', s.filename)
                        if(str(s.filename) == 'file.xml'):
                            et = xml.etree.ElementTree.parse(str(s))
                            print(et)
    else:
        print "failed to connect server"
    conn.close()

except Exception as e:
    print("*** Caught exception: %s: %s" % (e.__class__, e))
    traceback.print_exc()
    return e

我能够成功地连接到服务器,并且s.filename与我需要修改的xml文件名匹配。但是,我得到一个“没有这样的文件或目录存在”的异常。我也尝试过输入直接文件路径,比如

xml.etree.ElementTree.parse("//network_name/folder1/folder2/file.xml") 

得到同样的错误。你知道吗


Tags: 文件namein网络hostshareifxml

热门问题