Python-如何使用用户名和密码打开Windows共享

Python-如何使用用户名和密码打开Windows共享,python,windows,Python,Windows,我想从Python脚本访问Windows共享(例如。\backupserver\backups)。共享由用户名和密码保护。如何使用用户名和密码打开此共享,例如列出其内容?为什么不使用 NET USE 指挥部 通过子流程模块调用netuse,这是很简单的。使用(Python for Windows Extensions), 在win32wnet模块中访问windows网络方法。 该方法允许您指定用户名和密码 WNetAddConnection2(NetResource, Password, U

我想从Python脚本访问Windows共享(例如。\backupserver\backups)。共享由用户名和密码保护。如何使用用户名和密码打开此共享,例如列出其内容?

为什么不使用

NET USE 
指挥部

通过子流程模块调用
netuse
,这是很简单的。

使用(Python for Windows Extensions), 在
win32wnet
模块中访问windows网络方法。 该方法允许您指定用户名和密码

WNetAddConnection2(NetResource, Password, UserName, Flags)
创建到网络资源的连接。该函数可以将本地设备重定向到网络资源

连接激活后,使用常规目录和文件方法访问共享。

完成“网络使用”示例:


一个很好的库,它包装了“net use”命令:


NetResource定义的一个示例:
NetResource=win32wnet.NetResource()
NetResource.lpRemoteName=r'\\10.0.0.1\share'
Answer对解决方案的工作原理和工作方式几乎没有深入了解。
backup_storage_available = os.path.isdir(BACKUP_REPOSITORY_PATH)

if backup_storage_available:
    logger.info("Backup storage already connected.")
else:
    logger.info("Connecting to backup storage.")

    mount_command = "net use /user:" + BACKUP_REPOSITORY_USER_NAME + " " + BACKUP_REPOSITORY_PATH + " " + BACKUP_REPOSITORY_USER_PASSWORD
    os.system(mount_command)
    backup_storage_available = os.path.isdir(BACKUP_REPOSITORY_PATH)

    if backup_storage_available:
        logger.fine("Connection success.")
    else:
        raise Exception("Failed to find storage directory.")