将txt文件数据存入excel表格

前言

最近使用Appium自动化在测试设备配网的情况,需要记录每次成功与否和耗时时间。

由于App不是很稳定,执行一段时间会奔溃,因此数据只能通过追加的形式写入到txt文件。 

实现过程

存储在txt文件的数据格式是这样的:

需要提取的数据是成功与否及耗时时间,因此需要对每一行的数据进行解析:

def get_data(source_path):
    result_list = []                              # 定义两个空的列表,用于存储配网情况和耗时时间
    time_list = []
    for line in open(source_path):
        temp = str(line).split(',')               # 通过","将数据分隔成两部分
        result = temp[0].split(':')[-1]           # 提取配网情况
        # time = temp[1].split(':')[-1]
        time_value = temp[1].split(':')[-1].split('s')[0]     # 提取耗时时间的值
        result_list.append(result)                # 将数据依次添加到列表里
        time_list.append(time_value)
    return result_list, time_list

已将txt的数据提取出来了,下面只要将数据写入到excel对应的单元格即可:

python实现excel文件的写入需要安装第三方库xlrd和xlutils;另外excel的后缀需为xls,使用xlsx的话文件无法打开

xlrd的安装:pip3 install xlrd

xlutils的安装:pip3 install xlutils

import xlrd
from xlutils.copy import copy

excel_file = "/XXXXX/XXXXX/excel.xls"         # Excel文件的路径
rb = xlrd.open_workbook(excel_file)
wb = copy(rb)                                            # 需进行copy操作才可写入
ws = wb.get_sheet(0)                                 # 获取对应的sheet,需用get_sheet()方法才可往单元格写数据
for i in range(len(result)):
    ws.write(i + 1, 4, result[i])
    ws.write(i + 1, 5, int(time[i]))
    wb.save(excel_file)                                 # 将文件进行保存操作

猜你喜欢

转载自www.cnblogs.com/91parson/p/10086602.html