一、背景

协助产品部门在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中的产品数据的更多相关文章

  1. 第一节:python提取PDF文档中的图片

    由于项目需要将PDF文档当中的图片转换成图片,所以参考了这篇文章https://blog.csdn.net/qq_15969343/article/details/81673302后项目得以解决. 1 ...

  2. Python的list循环遍历中,删除数据的正确方法

    在遍历list,删除符合条件的数据时,总是报异常,代码如下: num_list = [1, 2, 3, 4, 5] print(num_list) for i in range(len(num_lis ...

  3. Python 使用 xlwings 往 excel 中写入一行数据的两种方法

    该方法跟上一篇写入一列的方法相反,代码如下: # -*- coding:utf-8 -*- import xlwings as xw list1 = [1,2,3,4,5] list2 = [[1], ...

  4. magento中取不同store中的产品数据

    $products = Mage::getResourceModel('catalog/product_collection')                    ->setStoreId( ...

  5. 利用python 提取log 文件里的关键句子,并进行统计分析

    利用python开发了一个提取sim.log 中的各个关键步骤中的时间并进行统计的程序: #!/usr/bin/python2.6 import re,datetime file_name='/hom ...

  6. 自动统计安卓log中Anr,Crash,Singnal出现数量的Python脚本

    作为测试,在测试工作中一定会经常抓log,有时log收集时间很长,导致log很大,可能达到几G,想找到能打开如此大的log文件的工具都会变得困难:即使log不大时,我们可以直接把log发给开发同学去分 ...

  7. 自动统计安卓log中Anr,Crash,Singnal出现数量的Python脚本 (转载)

    自动统计安卓log中Anr,Crash,Singnal出现数量的Python脚本   转自:https://www.cnblogs.com/ailiailan/p/8304989.html 作为测试, ...

  8. 脚本自动统计安卓log中Anr、Crash等出现的数量(Python)

    作为测试,在测试工作中一定会经常抓log,有时log收集时间很长,导致log很大,可能达到几G,想找到能打开如此大的log文件的工具都会变得困难:即使log不大时,我们可以直接把log发给开发同学去分 ...

  9. python操作txt文件中数据教程[2]-python提取txt文件

    python操作txt文件中数据教程[2]-python提取txt文件中的行列元素 觉得有用的话,欢迎一起讨论相互学习~Follow Me 原始txt文件 程序实现后结果-将txt中元素提取并保存在c ...

随机推荐

  1. kubernetes的思考

    初识k8s kubernetes,从接触到今年6月接触到现在有3个月了,严格来说是断断续续的接触,没有一直持续学习.在未接触之前,这个技术对我来说,有点像传说,运维同行对此评价普遍是比较难懂,概念庞大 ...

  2. tomcat在windows下安装

    1.下载地址:https://tomcat.apache.org/download-90.cgi Binary是编译好的,可以直接使用的版本: tar.gz,解压即可用: Source是源代码版本,需 ...

  3. POI和easyExcel

    POI与easyExcel 这个东西一般用来做什么? 将用户信息导出为Excel表格(导出数据) 将Excel表中的信息录入到网站数据库(比如一些习题上传) 在开发过程中会遇到对Excel的处理,比如 ...

  4. Typora,你好!

    初识Typora 1.标题 一个井号+空格+回车 =一级标题 两个井号+空格+回车 =二级标题 三个井号+空格+回车 =三级标题 四个井号+空格+回车 =四级标题 快捷键的话: 按ctrl + 1 就 ...

  5. Actor:人生如戏全靠演技--“三维度”逻辑编程语言的设计(3)

    在上一篇介绍了逻辑编程的作用,介绍了逻辑编程中的一些概念,包括逻辑程序的结构:事实.规则和问题:知识的表达方式:谓词演算.产生式规则,以及这些概念与三维度(角色+场景+时间)理论的契合关系,正式提出了 ...

  6. Spring中用@DependsOn注解控制Bean的创建顺序

    1. 概述 Spirng容器自己会管理bean的生命周期和bean实例化的顺序,但是我们仍然可以根据我们自己的需求进行定制.我可以可以选择使用SmartLifeCycle接口,也可以用@Depends ...

  7. Spring Boot 第六弹,拦截器如何配置,看这儿~

    持续原创输出,点击上方蓝字关注我吧 目录 前言 Spring Boot 版本 什么是拦截器? 如何自定义一个拦截器? 如何使其在Spring Boot中生效? 举个栗子 思路 根据什么判断这个接口已经 ...

  8. 记一次ElementUI源码修改过程

    修改目的 使用ElementUI el-tree过程发现选中节点,键盘移动上下键时(key down\key up)el-tree默认高亮移动的节点,业务上需要重写此事件. ​从官网发现该事件没有暴露 ...

  9. 02 sublime text3下配置Python的编译运行环境

    内容参考如下文章,加入了自己的干货: https://www.cnblogs.com/huluwahaha/p/7503930.html 在sublime中如何配置Python的编译环境呢? 打开Su ...

  10. Matlab绘制子图subplot使用攻略

    参考:https://jingyan.baidu.com/article/915fc414ad794b51394b20e1.html Matlab绘制子图subplot使用攻略 听语音 原创 | 浏览 ...