使用 Python 访问共享文件夹

Access the share folder using Python

提问人:Rafael Ferraria 提问时间:10/12/2023 最后编辑:BarmarRafael Ferraria 更新时间:10/12/2023 访问量:21

问:

# Caminho para o arquivo de origem
caminho_origem = 'C:\\TesteScript/'  # Substitua pelo caminho real do arquivo de origem

# Caminho para a pasta de destino compartilhada na rede
caminho_destino = r'\\RAFAEL-DESK\Users\rafa-\Desktop\TesteScript'  # Substitua pelo caminho real da pasta de destino
while True:
    # Lista todos os arquivos na pasta de origem
    for arquivo in os.listdir(caminho_origem):
        caminho_arquivo_origem = os.path.join(caminho_origem, arquivo)
        
        # Verifica se o caminho é de um arquivo (não é um diretório)
        if os.path.isfile(caminho_arquivo_origem):
            ser_imagem = is_image(caminho_arquivo_origem)
            if ser_imagem is True:
                # Monta o caminho para o arquivo de destino na pasta compartilhada
                caminho_arquivo_destino = os.path.join(caminho_destino, arquivo)
                
                try:
                    # Move o arquivo da pasta de origem para a pasta de destino
                    shutil.move(caminho_arquivo_origem, caminho_arquivo_destino)
                    print(f'Arquivo {arquivo} movido com sucesso para {caminho_destino}')
                except FileNotFoundError:
                    print(f'O arquivo {arquivo} não foi encontrado.')
                except PermissionError:
                    print(f'Permissão negada para mover o arquivo {arquivo}.')
                except Exception as e:
                    print(f"Ocorreu um erro ao mover o arquivo {arquivo}: {str(e)}")

它给了我以下错误

移动文件 11.jpg 时出错:[Errno 22] 参数无效:“\\RAFAEL-DESK\Users\rafa-\Desktop\TestScript/11.jpg”

有人可以帮我吗?

我正在尝试通过 Python 将文件从本地文件夹移动到网络共享文件夹

文件 目录 shutil python-os

评论

0赞 Suraj Shourie 10/12/2023
您在目录路径中同时使用了“\”和“/”
0赞 Barmar 10/12/2023
@SurajShourie 虽然它可能会令人困惑,但它应该不会引起问题。Windows 对它们进行同等处理。
0赞 Barmar 10/12/2023
如果在中包含驱动器号,是否有帮助?caminho_destino
0赞 Barmar 10/12/2023
相关,也许是重复的:stackoverflow.com/questions/18621577/......
0赞 furas 10/12/2023
当您使用带有前缀的字符串时,它会将 \\ 作为两个 \(不是单个 \),这可能会造成问题r

答: 暂无答案