python对ftp进行操作

python

背景:需要对ftp进行操作,涉及上传和下载操作

 

from ftplib import FTP

ftp = FTP(host=“ftp的hostname",user=‘登录用户名', passwd='登录密码') # 连接到ftp

ftp.set_debuglevel(2) # 打开调试级别2,显示详细信息

def download(filename,bufsize=1024):# bufsize设置的缓冲区大小

file_handle = open(filename, "wb").write # 以写模式在本地打开文件

ftp.retrbinary("RETR %s"%filename, file_handle, bufsize) # 接收服务器上文件并写入本地文件

def upload(filename,bufsize=1024):

file_handle2 = open(filename, "rb") # 以只读模式打开本地文件
   filename = filename.split("/")[-1 #有可能上传路径,所以处理一下

ftp.storbinary('STOR %s'%filename, file_handle2, bufsize)#上传本地filename到服务器,filename为上传到服务器上后显示的名字,第二个参数为上传的本地文件

ftp.getwelcome() # 打印出欢迎信息

ftp.cwd('目录名') # 进入远程目录

ftp.rmd(‘目录名') # 在ftp上删除目录

ftp.mkd('目录名') # 在ftp上创建目录

ftp.pwd() # 打印当前ftp目录

ftp.dir() # 打印ftp上当前目录下的所有文件

ftp.quit() # 退出ftp

具体说明:

1.ftp = FTP(host=“ftp的hostname",user=‘登录用户名', passwd='登录密码’)

实际调用了FTP().login来登录

 

2.download从ftp上下载文件

本地文件需要已wb写模式打开,然后通过retrinary()方法下载

 

3.upload上传本地文件到ftp服务器上

本地文件已只读模式打开,然后通过storbinary()方法上传

第一个参数为上传命令,filename为放到服务器上的名字;第二个参数为要上传的本地文件 

 

4.其他一些常用方法

getwelcome():打印ftp欢迎语,在ftp服务器上设置的

cwd(‘目录名’):进入ftp服务器的某目录,切换目录

rmd(‘目录名’):删除目录

mkd(‘目录名’):创建目录

ftp.pwd():打印当前目录

dir():打印当前目录下的所有文件

quit()或close():关闭ftp连接

 

备注:如果想实现上传目录或根据正则匹配上传文件,需要自己单独写方法

以上是 python对ftp进行操作 的全部内容, 来源链接: utcz.com/z/389490.html

回到顶部