在 Python 中使用 ftplib 上传文件之前更改服务器上的目录

2022-01-09 00:00:00 python ftp ftplib

问题描述

我有这段代码,但我不知道如何在上传文件之前更改服务器上的目录.

I have this code, but I can't figure out how to change directory on the server before uploading files.

谁能帮帮我?

import ftplib
import os

server = 'enter your servername here'
username = 'root'
password = 'passowrd'
myFTP = ftplib.FTP(server, username, password)
myPath = r'C:path_of_the_folder_goes_here'
def uploadThis(path):
    files = os.listdir(path)
    os.chdir(path)
    for f in files:
        if os.path.isfile(path + r'{}'.format(f)):
            fh = open(f, 'rb')
            myFTP.storbinary('STOR %s' % f, fh)
            fh.close()
        elif os.path.isdir(path + r'{}'.format(f)):
            myFTP.mkd(f)
            myFTP.cwd(f)
            uploadThis(path + r'{}'.format(f))
    myFTP.cwd('..')
    os.chdir('..')
uploadThis(myPath)


解决方案

使用 FTP.cwd方法:

myFTP.cwd('/remote/path')

打电话之前

uploadThis(myPath)

相关文章