zoukankan      html  css  js  c++  java
  • 将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)                                 # 将文件进行保存操作
  • 相关阅读:
    使用 linux kernel +busybox 定制linux系统
    记一次golang的内存泄露
    关于Queries_per_sec 性能计数器
    NUMA导致的MySQL服务器SWAP问题分析
    Drop Table对MySQL的性能影响分析
    当MySQL数据库遇到Syn Flooding
    tcp_tw_recycle参数引发的数据库连接异常
    一例数据同步异常问题分析
    MySQL大量线程处于Opening tables的问题分析
    MySQL DeadLock故障排查过程
  • 原文地址:https://www.cnblogs.com/91parson/p/10086602.html
Copyright © 2011-2022 走看看