python脚本实现数据导出excel格式的简单方法(推荐)

时间:2021-05-22

实习期间,服务器的一位师兄让我帮忙整理一下服务器的log数据,最终我用Python实现了数据的提取并将其用Excel格式导出。下面是我Python实现的源码,可以自动遍历某一文件目录下的所有文本文件,并将总的数据导出到Excel文件中,导出为Excel格式这样就比较方便统计了。

//实现将目录下所有文件格式为.txt的文件进行遍历统计,如果是别的格式直接将下面的.txt改为你所需要的格式后缀就可以了,比较方便。

//过程就是先将所有的文件中的内容提取出来写入到一个新文件中,然后再从新文件中提取数据,最后将数据写入到Excel文件中

from pyExcelerator import *import oscurrentpath = os.getcwd() testlog = open('test.mak','w') os.mkdir(r'Excel') print "currentpath: ",currentpath for file in os.listdir(currentpath):if os.path.isfile(os.path.join(currentpath,file))==True:if file.find('.txt')>0: //如果是别的格式直接将下面的.txt改为你所需要的格式后缀就可以了file_ = open(file,'r')content = file_.read() file_.close() testlog.write( content ) print 1os.popen('log_parse.exe test.mak >> shuju.log')print 2for _file in os.listdir(currentpath):if os.path.isfile(os.path.join(currentpath,_file))==True:if _file.find('.log')>0:work = Workbook() works = work.add_sheet('Sheet1') print 3file_object = open(_file)for i in range(0,2):works.col(i).width = 10000i = 0for line in file_object:line = line.rstrip('\n')print 4if not line.split():i = i + 1if line.strip():array = line.split(':')lineleft = array[0]lineright = array[1]works.write(i,0,lineleft)works.write(i,1,lineright)i = i + 1_file = _file.rstrip('.log')_file = 'Excel\%s.xls' % _filework.save(_file)

//其中的print 1 2 3 4 是我打的log如果不想要可以直接删掉。 使用该Python实现时直接将上面代码保存到 test.py的文件中就行了。

另外中间使用到了一个c++的提取可执行文件log_parse.exe,放在下面了。使用时将其与test.py放在同一目录下就可以了。


如果想方便的话可以建一个.bat文件写成命令行的形式,直接点击一下就可以自动完成所有的工作了,如下:

echo
python test.py

我自己的实现是大约150M文件跑了一分半的时间出结果,我认为还比较理想。

以上这篇python脚本实现数据导出excel格式的简单方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章