您的位置 首页 java

python读取txt文本信息写入excel

每天巡检脚本生成的巡检报告

python读取txt文本信息写入excel

文本信息如下:

python读取txt文本信息写入excel

python代码

 #!/usr/bin/env python
#  -*-coding:utf8 -*-
# @Time : 2020/11/17 16:31
# @Author : riches
# @Site : 
# @File : tiqu1.py
# @Software:  PyCharm 
import os
import re
import xlrd, xlwt

def  cpu(data):
    return data.split()[5]

def mem(data):
    return data.split()[3]

def disk(data):
    return data.split()[4]
def disk1(data):
    return data.split()[4]
def disk2(data):
    return data.split()[4]

def find_files(s_path):
    res = {}
    file_list = os.listdir(s_path)
    for filename in file_list:
         abs _filename = os.path.join(s_path, filename)
        if os.path.isfile(abs_filename):
            # 打开文件
            with open(abs_filename, "r", encoding="utf8") as f:
                for line in f:
                    if re.search('mem.*cpu',line) is not None:
                        #import pdb;pdb.set_trace()
                        m2 = mem(line)
                        m1 = cpu(line)
                    if re.search('/dev/sda3.*/',line) is not None:
                        d1 = disk(line)
                    if re.search('/dev/sdb1.*/home',line) is not None:
                        d2 = disk1(line)
                    if re.search('/dev/sdc1.*/home', line) is not None:
                        d3 = disk2(line)

                        break

            res[abs_filename] = (m1,m2,d1,d2,d3)
        elif os.path.isdir(abs_filename):
            find_files(abs_filename)
        else:
            print("不是文件夹,也不是文件")

    return res


#创建excel 文件
def write_excel(data):
    writebook = xlwt.Workbook()  # 打开一个excel
    sheet = writebook.add_sheet('data')  # 在打开的excel中添加一个sheet
    # 添加表头
    sheet.write(0, 0, '文件名')
    #sheet.write(0, 1, '内存占比')
    #sheet.write(0, 2, 'CPU占比')
    sheet.write(0, 1, 'CPU占比')
    sheet.write(0, 2, '内存占比')
    sheet.write(0, 3, '硬盘根占比')
    sheet.write(0, 4, 'home占比')
    sheet.write(0, 5, 'data占比')

    # sheet.write(0, 5, '18:00.1流量')
    # sheet.write(0, 6, '86:00.1流量')

    # 65535 最大行,可以自行拆分
    for index, item in enumerate(data):
        sheet.write(index + 1, 0, item)  # 文件名
        sheet.write(index + 1, 1, data[item][0])
        sheet.write(index + 1, 2, data[item][1])
        sheet.write(index + 1, 3, data[item][2])
        sheet.write(index + 1, 4, data[item][3])
        sheet.write(index + 1, 5, data[item][3])

    writebook.save("D:tongji192.168.1.1.xls")

if __name__ == "__main__":
    s = r"D:tqtest"  # 更换自己的路径
    res = find_files(s)
    write_excel(res)  

运行效果如下:

文章来源:智云一二三科技

文章标题:python读取txt文本信息写入excel

文章地址:https://www.zhihuclub.com/196702.shtml

关于作者: 智云科技

热门文章

评论已关闭

4条评论

  1. From the national breast cancer registry INCA, we identified 1256 breast cancer patients undergoing surgery January 2006 January 2014 in Stockholm

  2. 000 CLOPIDOGREL LAFRANCOL 75 mg x 14 tabs See the full update regarding surgical mesh in pelvic organ prolapse here FDA Safety Communication Update on Serious Complications Associated with Transvaginal Placement of Surgical Mesh for Pelvic Organ Prolapse

网站地图