import csv import re import sys def write_to_csv(output_file, warning_messages): with open(output_file, 'a') as csvfile: writer = csv.writer(csvfile, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL) writer.writerows(warning_messages) def get_warnings(filename): upc = filename.split('_')[0] with open(filename, 'r') as log_file: pattern = re.compile(r'
\s+WARN:\s*WARNING\s*(.*$)') warnings = [] for line in log_file: warning_messages = pattern.search(line) if warning_messages != None: warnings.append([upc, warning_messages.group(1)]) write_to_csv('output.csv', warnings) # run the program if __name__ == "__main__": for file in sys.argv[1:]: get_warnings(file)