如何用Python提取10000份log中的产品信息

2021-01-14 17:08:07 IT技术网 互联网
浏览

一、背景

协助产品部门提取10000份产品log信息中的SN号、IMEI号、ICCID号到Excel表格中。

1.l原始的og内容:

2.提取后的Excel表格:

二、实现

1.思路

a.for遍历获取所有log文件的路径;

b.for遍历log文件内容;

c.re正则匹配SN号、IMEI号、ICCID号写入Excel表格中。

2.实现代码

#!/usr/bin/python
import os,xlsxwriter,re

def get_data():
  workbook = xlsxwriter.Workbook('Test.xlsx')           #建立Excel
  worksheet = workbook.add_worksheet()               #添加sheet
  worksheet.write('A1', 'SN')                   #添加列标题
  worksheet.write('B1', 'IMEI')
  worksheet.write('C1', 'ICCID')
  files=os.listdir(r'E:T工位三(PAS LOG)PASS')          #获取目录中所有log名称列表
  j= 1
  for i in files:                         #遍历目录中的log文件
    xpath = os.path.join('E:T工位三(PAS LOG)PASS',i)      #拼接log文件路径
    f = open(xpath, 'r',encoding='ISO-8859-1')          #打开log文件
    result = f.readlines()                    #读取所有log文件内容
    f.close()
    for line in result:                     #遍历log文件内容
      if re.search('WriteSN:(.*)', line.strip()):       #正则匹配
        sn=re.search('WriteSN:(.*)',line.strip()).group(1)
        worksheet.write('A' + str(j + 1), sn)        #将匹配到的SN号写入Excel中
        print(sn)
      if re.search('IMEI:(.*)', line.strip()):
        imei= re.search('IMEI:(.*)', line.strip()).group(1)
        worksheet.write('B' + str(j + 1), imei)
        print(imei)
      if re.search('ICCID:(.*)', line.strip()):
        iccid =re.search('ICCID:(.*)', line.strip()).group(1)
        worksheet.write('C' + str(j + 1), iccid)
        print(iccid)
    j=j+1
  workbook.close()
  
if __name__ == '__main__':
  get_data()

以上就是如何用Python提取10000份log中的产品信息的详细内容,更多关于python 提取log中的信息的资料请关注IT技术网其它相关文章!

您可能感兴趣的文章:

  • python 日志模块logging的使用场景及示例
  • Python中logging日志的四个等级和使用
  • python tkinter的消息框模块(messagebox,simpledialog)
  • Python网络爬虫信息提取mooc代码实例
  • python读取raw binary图片并提取统计信息的实例
  • python 利用正则表达式提取特殊信息
  • python提取照片坐标信息的实例代码
  • Python网络爬虫与信息提取(实例讲解)
  • python批量提取word内信息