国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

編寫Python腳本來實現最簡單的FTP下載的教程

2020-02-23 01:04:42
字體:
來源:轉載
供稿:網友

訪問FTP,無非兩件事情:upload和download,最近在項目中需要從ftp下載大量文件,然后我就試著去實驗自己的ftp操作類,如下(PS:此段有問題,別復制使用,可以參考去試驗自己的ftp類!)

import osfrom ftplib import FTP class FTPSync():  def __init__(self, host, usr, psw, log_file):    self.host = host    self.usr = usr    self.psw = psw    self.log_file = log_file     def __ConnectServer(self):    try:      self.ftp = FTP(self.host)      self.ftp.login(self.usr, self.psw)      self.ftp.set_pasv(False)      return True    except Exception:      return False     def __CloseServer(self):    try:      self.ftp.quit()      return True    except Exception:      return False     def __CheckSizeEqual(self, remoteFile, localFile):    try:      remoteFileSize = self.ftp.size(remoteFile)      localFileSize = os.path.getsize(localFile)      if localFileSize == remoteFileSize:        return True      else:        return False    except Exception:      return None       def __DownloadFile(self, remoteFile, localFile):    try:      self.ftp.cwd(os.path.dirname(remoteFile))      f = open(localFile, 'wb')      remoteFileName = 'RETR ' + os.path.basename(remoteFile)      self.ftp.retrbinary(remoteFileName, f.write)             if self.__CheckSizeEqual(remoteFile, localFile):        self.log_file.write('The File is downloaded successfully to %s' + '/n' % localFile)        return True      else:        self.log_file.write('The localFile %s size is not same with the remoteFile' + '/n' % localFile)        return False    except Exception:      return False     def __DownloadFolder(self, remoteFolder, localFolder):    try:      fileList = []      self.ftp.retrlines('NLST', fileList.append)      for remoteFile in fileList:        localFile = os.path.join(localFolder, remoteFile)        return self.__DownloadFile(remoteFile, localFile)    except Exception:      return False     def SyncFromFTP(self, remoteFolder, localFolder):    self.__DownloadFolder(remoteFolder, localFolder)    self.log_file.close()    self.__CloseServer()

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吉木萨尔县| 邯郸市| 汝城县| 广东省| 保定市| 灌阳县| 横峰县| 西昌市| 固镇县| 色达县| 达尔| 陕西省| 邮箱| 三河市| 六枝特区| 蕉岭县| 高台县| 营口市| 巴南区| 宜阳县| 弥勒县| 丹棱县| 靖州| 济宁市| 宜都市| 扶风县| 南充市| 汾西县| 无棣县| 鄂温| 华容县| 昌江| 图片| 杭锦旗| 启东市| 肇州县| 鄄城县| 慈利县| 天门市| 苗栗县| 阿克苏市|