1. 程式人生 > >Python——連線ftp操作

Python——連線ftp操作


# FTP操作
import ftplib
 
f = ftplib.FTP(host)  # 例項化FTP物件
f.login(username, password)  # 登入
 
def ftp_download():
    '''以二進位制形式下載檔案'''
    file_remote = '1.txt'
    file_local = 'D:\\test_data\\ftp_download.txt'
    bufsize = 1024  # 設定緩衝器大小
    fp = open(file_local, 'wb')
    f.retrbinary('RETR %s'
% file_remote, fp.write, bufsize) fp.close() def ftp_upload(): '''以二進位制形式上傳檔案''' file_remote = 'ftp_upload.txt' file_local = 'D:\\test_data\\ftp_upload.txt' bufsize = 1024 # 設定緩衝器大小 fp = open(file_local, 'rb') f.storbinary('STOR ' + file_remote, fp, bufsize) fp.
close() ftp_download() ftp_upload() f.quit()
  • login(user=‘anonymous’,passwd=’’, acct=’’) 登入 FTP 伺服器,所有引數都是可選的
  • pwd() 獲得當前工作目錄
  • cwd(path) 把當前工作目錄設定為 path 所示的路徑
  • dir ([path[,…[,cb]]) 顯示 path 目錄裡的內容,可選的引數 cb 是一個回撥函式,會傳遞給 - —retrlines()方法
  • nlst ([path[,…]) 與 dir()類似, 但返回一個檔名列表,而不是顯示這些檔名
  • retrlines(cmd [, cb]) 給定 FTP命令(如“ RETR filename”),用於下載文字檔案。可選的回撥函式 cb 用於處理檔案的每一行
  • retrbinary(cmd,cb[,bs=8192[, ra]]) 與 retrlines()類似,只是這個指令處理二進位制檔案。回撥函式 - cb 用於處理每一塊(塊大小預設為 8KB)下載的資料
  • storlines(cmd, f) 給定 FTP 命令(如“ STOR filename”),用來上傳文字檔案。要給定一個檔案物件 f
  • storbinary(cmd, f,[,bs=8192]) 與 storlines()類似,只是這個指令處理二進位制檔案。要給定一個檔案物件 f,上傳塊大小 bs 預設為 8KB
  • rename(old, new) 把遠端檔案 old 重新命名為 new
  • delete(path) 刪除位於 path 的遠端檔案
  • mkd(directory) 建立遠端目錄
  • rmd(directory) 刪除遠端目錄
  • quit() 關閉連線並退出