python自动化web测试-openpyxl操作excel表格

实现excel文件创建和追加内容

import time
import openpyxl

stime = time.strftime("%Y-%m-%d-%H_%M_%S",time.localtime(time.time()))

#创建新excel文件
def openpyxl_create(fileName):
    path = '../report/' + fileName + ".xlsx"
    tableName1 = 'Report'
    tableName2 =  'OperateTime'
    data = openpyxl.Workbook() # 新建工作簿
    #data.create_sheet('Sheet1') # 添加页
    data.create_sheet(tableName1)  # 添加页

    # table = data.active # 获得当前活跃的工作页,默认为第一个工作页
    #table = data.get_sheet_by_name('Sheet1') # 获得指定名称页
    table = data.get_sheet_by_name(tableName1)  # 获得指定名称页

    #table.cell(1,1,'Test') # 行,列,值 这里是从1开始计数的
    ncols = 1
    values = ["设备IP", "功放开关", "核心板软重启", "核心板断电重启", "测试结果"]  # 需要写入的值
    for value in values:
        table.cell(1, ncols, value)  # 因为单元格从0开始算,所以row不需要加一
        ncols = ncols + 1

    data.create_sheet(tableName2)  # 添加页
    table = data.get_sheet_by_name(tableName2)  # 获得指定名称页
    values = ["设备IP", "功放开启时间", "功放关闭时间", "核心板软重启时间", "核心板断电重启时间", "主控重启时间"]  # 需要写入的值
    ncols = 1
    for value in values:
        table.cell(1, ncols, value)  # 因为单元格从0开始算,所以row不需要加一
        ncols = ncols + 1
    data.save(path) # 一定要保存

def openpyxl_addin(fileName,tableName,dataList):
    fileName = '../report/' + fileName + ".xlsx"
    data = openpyxl.load_workbook(fileName)
    #data.create_sheet('Sheet1')  # 添加页
    #print(data.get_named_ranges())  # 输出工作页索引范围
    #print(data.get_sheet_names())  # 输出所有工作页的名称
    # 取第一张表
    #sheetnames = data.get_sheet_names()
    table = data.get_sheet_by_name(tableName)
    #table = data.active
    print(table.title)  # 输出表名
    nrows = table.max_row  # 获得行数
    ncolumns = table.max_column  # 获得列数

    #values = ["设备IP", "功放开关", "核心板软重启", "核心板断电重启", "测试结果"]  # 需要写入的值
    #values = ['192.168.3.200', "Y", 'Y', 'Y', 'Y']
    values = dataList
    col = 1
    for value in values:
        print("value:%s,col:%d"%(value,col))
        table.cell(nrows + 1, col).value = value
        #nrows = nrows + 1
        col += 1
    data.save(fileName)

if __name__=='__main__':
    filename = stime
    tableName1 = 'Report'
    tableName2 = 'OperateTime'
    values = ['192.168.3.200', "Y", 'Y', 'Y', 'Y']
    openpyxl_create(filename)

    for i in range(10):
        openpyxl_addin(filename,tableName1,values)

效果如下:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_40904479/article/details/105688784