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


Posted in Python onDecember 30, 2016

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

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

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

from pyExcelerator import *
import os
currentpath = 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 1
os.popen('log_parse.exe test.mak >> shuju.log')
print 2
for _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 3
file_object = open(_file)
for i in range(0,2):
works.col(i).width = 10000
i = 0
for line in file_object:
line = line.rstrip('\n')
print 4
if not line.split():
i = i + 1
if 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' % _file
work.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格式的简单方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
教你用 Python 实现微信跳一跳(Mac+iOS版)
Jan 04 Python
python 实现登录网页的操作方法
May 11 Python
更换Django默认的模板引擎为jinja2的实现方法
May 28 Python
python读取图片任意范围区域
Jan 23 Python
python 获取sqlite3数据库的表名和表字段名的实例
Jul 17 Python
Flask框架请求钩子与request请求对象用法实例分析
Nov 07 Python
python实现一个点绕另一个点旋转后的坐标
Dec 04 Python
pandas-resample按时间聚合实例
Dec 27 Python
Python版中国省市经纬度
Feb 11 Python
python绘制动态曲线教程
Feb 24 Python
解决Tensorflow2.0 tf.keras.Model.load_weights() 报错处理问题
Jun 12 Python
Python如何将模块打包并发布
Aug 30 Python
利用python生成一个导出数据库的bat脚本文件的方法
Dec 30 #Python
python实现按任意键继续执行程序
Dec 30 #Python
详解python3实现的web端json通信协议
Dec 29 #Python
Python正则表达式如何进行字符串替换实例
Dec 28 #Python
Python写的一个定时重跑获取数据库数据
Dec 28 #Python
Python 实现文件的全备份和差异备份详解
Dec 27 #Python
Python Queue模块详细介绍及实例
Dec 27 #Python
You might like
php不用内置函数对数组排序的两个算法代码
2010/02/08 PHP
php模拟asp中的XmlHttpRequest实现http请求的代码
2011/03/24 PHP
PHP正则提取不包含指定网址的图片地址的例子
2014/04/21 PHP
PHP中file_exists函数不支持中文名的解决方法
2014/07/26 PHP
PHP 7.0新增加的特性介绍
2017/06/08 PHP
PHPCrawl爬虫库实现抓取酷狗歌单的方法示例
2017/12/21 PHP
thinkPHP框架整合tcpdf插件操作示例
2018/08/07 PHP
js动态给table添加/删除tr的方法
2013/08/02 Javascript
使用js实现一个可编辑的select下拉列表
2014/02/20 Javascript
js验证IP及子网掩码的合法性有效性示例
2014/04/30 Javascript
JQuery弹出层示例可自定义
2014/05/19 Javascript
jquery实现的省市区三级联动
2015/04/02 Javascript
深入理解MVC中的时间js格式化
2016/05/19 Javascript
javaScript事件学习小结(四)event的公共成员(属性和方法)
2016/06/09 Javascript
Angular 4.x 路由快速入门学习
2017/05/03 Javascript
es6 symbol的实现方法示例
2019/04/02 Javascript
详解如何运行vue项目
2019/04/15 Javascript
原生JS实现动态添加新元素、删除元素方法
2019/05/05 Javascript
vue如何自动化打包测试环境和正式环境的dist/test文件
2019/06/06 Javascript
layui 数据表格+分页+搜索+checkbox+缓存选中项数据的方法
2019/09/21 Javascript
openlayers4实现点动态扩散
2020/08/17 Javascript
NodeJS开发人员常见五个错误理解
2020/10/14 NodeJs
[06:43]DAC2018 4.5 SOLO赛 Maybe vs Paparazi
2018/04/06 DOTA
Python入门教程之if语句的用法
2015/05/14 Python
Python的Django中django-userena组件的简单使用教程
2015/05/30 Python
python发送邮件功能实现代码
2016/07/15 Python
儿童编程python入门
2018/05/08 Python
Python面向对象封装操作案例详解
2019/12/31 Python
Python Scrapy多页数据爬取实现过程解析
2020/06/12 Python
Java里面StringBuilder和StringBuffer有什么区别
2016/06/06 面试题
将"引用"作为函数返回值类型的格式、好处和需要遵守的规则
2016/02/09 面试题
介绍一下JMS编程步骤
2015/09/22 面试题
群众路线教育实践活动的心得体会
2014/09/03 职场文书
高中体育课教学反思
2016/02/16 职场文书
python3 hdf5文件 遍历代码
2021/05/19 Python
Redisson实现Redis分布式锁的几种方式
2021/08/07 Redis