• 将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)                                 # 将文件进行保存操作
  • 相关阅读:
    独立安装SharePoint 2013碰到的"SDDL"问题及解决方法
    软件编程21法则
    HtmlAgilityPack 之 HtmlNode类
    SpringBoot集成Hadoop3.1.3
    win10 mysql慢查询
    Java多线程并行计算(Google的Guava使用)
    win10安装hadoop3.1.3
    mapDB的基本用法
    SpringBoot集成JMH
    mysql死锁
  • 原文地址:https://www.cnblogs.com/91parson/p/10086602.html
Copyright © 2020-2023  润新知