把txt文件转换成xlsx文件.md

2020-06-08  本文已影响0人  平凡的运维之路

处理大文件txt转换成xlsx格式


#!/usr/bin/python
#coding:utf8
"""
1、此脚本用于,读取文件格式化成列表,根据设置大小阈值,进行切换存储文件
2、实例化之后使用append方法时,会出现内存溢出不系统kill掉情况,就需要设置每个文件写入指定行,进行替换
"""
import openpyxl


def Toxls(filename, xlsname):  # 文本转换成xls的函数,filename 表示一个要被转换的txt文本,xlsname 表示转换后的文件名
    print('converting xlsx ... ')
    CountLine = 1500
    lineNumber = 0
    filenumber = 0
    xls = openpyxl.Workbook()
    sheet = xls.get_sheet_by_name('Sheet')
    #行首头部信息
    headsmg = ["录音文件","sessionid","客户号码","外显号码","坐席工号","坐席分机","开始时间","结束时间"]
    sheet.append(headsmg)
    with open(filename,'r') as f:
        for line  in f.readlines() :
            line = line.strip().split(",")
            #使用列表写入xlsx文件
            sheet.append(line)
            lineNumber += 1
            if int(lineNumber) >= int(CountLine):
                filenumber += 1
                # print(sheet)
                xls.save(xlsname + "_" + str(filenumber) +'.xlsx')
                xls = openpyxl.Workbook()
                sheet = xls.get_sheet_by_name('Sheet')
                headsmg = ["录音文件", "sessionid", "客户号码", "外显号码", "坐席工号", "坐席分机", "开始时间", "结束时间"]
                sheet.append(headsmg)
                lineNumber = 0


if __name__ == "__main__":
    txtfilename="C:\\Users\\Root\\Desktop\\final_0251210053-2.txt"
    xlsname="C:\\Users\\Root\\Desktop\\jsdx-0211270039"
    Toxls(txtfilename, xlsname)

上一篇下一篇

猜你喜欢

热点阅读