python 查詢檔案,迴圈遍歷資料夾,獲取資料夾中的某個檔案中的檔案,判斷檔案是否包含在某個資料夾下
阿新 • • 發佈:2020-12-20
import os filepath = r'C:\Users\bqm66\AppData\Local\Encoo\Encoo Robot\JobLogs\local\管理員許可權可以訪問的檔案\1.0.0' filelist = [] # 拿到所有的日誌檔案 class LogFile: try: pathDir = os.listdir(filepath) for allDir in pathDir: child = os.path.join('%s%s' % (filepath, allDir)) # print('列印檔案', child) filelist.append(child) # print('所有檔案', filelist) ''' 1.拿到最後一個(即最新的執行時間的檔案) 2.需要做字串取值,拿到後14個字元 3.做字串拼接,獲取到真正正確的路徑,可輸入檔案位置直接開啟的檔案有效路徑 4.校驗log檔案是否存在 5.校驗截圖檔案是否存在,獲取檔案中的截圖數量,列印輸出結果 ''' endfile_name = filelist[-1] # print(type(endfile_name), endfile_name) # print('拿到後14個字元', endfile_name[-14:]) new_file = endfile_name[-14:] rod = f'\{new_file}' # 我是最後轉換的正確路徑 correct_path = filepath + rod # print('我是最後轉換的正確路徑', correct_path) # 進行資料夾內容迴圈獲取 pathDir = os.listdir(correct_path) for allDir in pathDir: child = os.path.join('%s%s' % (filepath, allDir)) # print('列印正確的檔案', type(child), child) correctlogname = 'job-' + new_file + '.log' jietu = 'Screenshots' if correctlogname and jietu in child: print('日誌檔案已存在,Screenshots檔案已存在') # 截圖路徑 jietu_road = '\Screenshots' correct_jietu_road = correct_path + jietu_road # print('我是最後轉換的正確路徑', correct_jietu_road) pathDir = os.listdir(correct_jietu_road) child_list = [] for allDir in pathDir: child = os.path.join('%s%s' % (filepath, allDir)) # print('列印正確的檔案', type(child), child) child_list.append(child) jietu_num = len(child_list) # print('我最後的值是', len(child_list), child_list) if 'jpg' in child: print(f'執行截圖功能通過,總共有{jietu_num}張截圖') except: print('系統資原始檔不匹配,非有效檔案路徑,點選Robot日誌,檢查對應磁碟檔案配置') LogFile()