#coding=utf8'''該庫用來管理文件。初始化函數調用讀取配置文件模塊中的Config類用來獲取下載路徑、保存路徑。模塊包含四個方法:clearResultCSV(): 用來刪除下載路徑下所有的result開頭的csv文件moveCSVToSave():把下載路徑下的result.csv文件重命名,并把重命名后的文件移動到保存路徑下getLastFileWithPath():獲取保存路徑下最新的文件,并帶路徑返回該文件getLastFile():獲得最新文件的命令并返回'''import os#操作文件的包import shutilimport reimport time#導入讀取配置文件庫的Configfrom readConfig import Configclass FileManger(object): def __init__(self): try: #創建一個Config對象實例 self.config=Config() #通過對象實例調用方法getDownPath() #獲取下載路徑 self.down=self.config.getDownPath() #通過對象實例調用方法getSavePath() #獲取保存路徑 self.save=self.config.getSavePath() except Exception,e: PRint e def clearResultCSV(self): try: #獲取下載路徑下的所有文件 #并把文件保存在list變量fileList中 fileList=os.listdir(self.down) #判斷fileList是否為空,不為空執行if模塊 if fileList: #對fileList中的元素進行循環 for item in fileList: #查找下載路徑下是否存在result開頭的csv文件 #如果存在,則刪除 if re.match("result(.*).csv",item): #刪除result開頭的csv文件 os.remove(self.down+"//"+item) except Exception,e: print e def moveCSVToSave(self): try: #獲取下載路徑下的所有文件 #并把文件保存在list變量fileList中 fileList=os.listdir(self.down) #獲取當前時間并轉換為字符串格式 now=time.strftime("%Y%m%d%H%M%S") #判斷fileList是否為空,不為空執行if模塊 if fileList: #對fileList中的元素進行循環 for item in fileList: try: #查找下載路徑下是否存在result.csv文件 #如果存在,對文件進行重命名 if re.match("result.csv",item): #獲取帶有路徑的result.csv文件 oldfilename=self.down+"//"+item #重命名的命令格式是符:20170306143330.csv newfileName=self.down+"//"+now+".csv" #對文件result.csv進行重命名為格式如:20170306143330.csv os.rename(oldfilename,newfileName) #把重命名的文件移動到保存路徑下 shutil.move(newfileName, self.save) except Exception,e: print e except Exception,e: print e def getLastFileWithPath(self): try: #獲取下載路徑下的所有文件 #并把文件保存在list變量listfile中 listfile=os.listdir(self.save) #判斷listfile是否為空,不為空執行if模塊 if listfile: #保存帶有路徑的最新文件 #listfile[-1]表示最后一個元素,最新插入的元素 lastfile=self.save+"//"+listfile[-1] #返回最新文件 return lastfile except Exception,e: print e def getLastFile(self): try: #獲取下載路徑下的所有文件 #并把文件保存在list變量listfile中 listfile=os.listdir(self.save) #判斷listfile是否為空,不為空執行if模塊 if listfile: #保存帶有路徑的最新文件 #listfile[-1]表示最后一個元素,最新插入的元素 return listfile[-1] except Exception,e: print e def test(): ''' 創建一個測試腳本,執行冒煙測試。 用來驗證程序功能能正常運行。 ''' #創建一個Config對象實例 fm=FileManger() #fm.clearResultCSV() fm.moveCSVToSave() print fm.getLastFileWithPath(),os.listdir(fm.save) if __name__=="__main__": test()完整項目源碼下載鏈接:http://download.csdn.net/download/henni_719/9771946
新聞熱點
疑難解答