在Python中,可以使用ftplib
库来操作FTP服务器
from ftplib import FTP
def set_transfer_mode(ftp, mode):
if mode == "binary":
ftp.set_pasv(True)
ftp.set_binary()
elif mode == "ascii":
ftp.set_pasv(False)
ftp.set_ascii()
else:
print("Invalid mode. Please use 'binary' or 'ascii'.")
# 连接到FTP服务器
ftp = FTP("ftp.example.com")
ftp.login(user="username", passwd="password")
# 设置传输模式为二进制
set_transfer_mode(ftp, "binary")
# 或者设置传输模式为ASCII
# set_transfer_mode(ftp, "ascii")
# 在这里执行其他FTP操作,例如上传、下载文件等
# 退出FTP服务器
ftp.quit()
在这个示例中,我们定义了一个名为set_transfer_mode
的函数,该函数接受一个FTP对象和一个表示传输模式的字符串参数(“binary"或"ascii”)。根据指定的模式,我们使用set_pasv()
和set_binary()
(或set_ascii()
)方法来设置被动模式和传输模式。