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元组操作实例解析
Sep 23 Python
Python实现的简单hangman游戏实例
Jun 28 Python
Python使用Selenium+BeautifulSoup爬取淘宝搜索页
Feb 24 Python
Python使用matplotlib绘制余弦的散点图示例
Mar 14 Python
浅谈python str.format与制表符\t关于中文对齐的细节问题
Jan 14 Python
pandas DataFrame 删除重复的行的实现方法
Jan 29 Python
对Python中的条件判断、循环以及循环的终止方法详解
Feb 08 Python
Python3 Tkinkter + SQLite实现登录和注册界面
Nov 19 Python
使用Python制作缩放自如的圣诞老人(圣诞树)
Dec 25 Python
tensorflow 固定部分参数训练,只训练部分参数的实例
Jan 20 Python
Pandas中DataFrame基本函数整理(小结)
Jul 20 Python
如何用python爬取微博热搜数据并保存
Feb 20 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数组传递是值传递而非引用传递概念纠正
2013/01/31 PHP
PHP使用ob_start生成html页面的方法
2014/11/07 PHP
Laravel4中的Validator验证扩展用法详解
2016/07/26 PHP
PHP CURL使用详解
2019/03/21 PHP
多浏览器兼容性比较好的复制到剪贴板的js代码
2011/10/09 Javascript
jquery select动态加载选择(兼容各种浏览器)
2013/02/01 Javascript
JS检测图片大小的实例
2013/08/21 Javascript
JS对HTML标签select的获取、添加、删除操作
2013/10/17 Javascript
在页面中js获取光标/鼠标的坐标及光标的像素坐标
2013/11/11 Javascript
jQuery中ajax的get()方法用法实例
2014/12/26 Javascript
原生JS实现LOADING效果
2015/03/16 Javascript
jQuery实现平滑滚动页面到指定锚点链接的方法
2015/07/15 Javascript
javascript实现数组去重的多种方法
2016/03/14 Javascript
详解微信小程序 登录获取unionid
2017/06/27 Javascript
JS跳转手机站url的若干注意事项
2017/10/18 Javascript
Vue resource三种请求格式和万能测试地址
2018/09/26 Javascript
JS数组去重的6种方法完整实例
2018/12/08 Javascript
服务端预渲染之Nuxt(使用篇)
2019/04/08 Javascript
JavaScript 继承 封装 多态实现及原理详解
2019/07/29 Javascript
Vue之Mixins(混入)的使用方法
2019/09/24 Javascript
javascript实现打砖块小游戏(附完整源码)
2020/09/18 Javascript
[01:18]一目了然!DOTA2DotA快捷操作对比第一弹
2014/07/01 DOTA
python的urllib模块显示下载进度示例
2014/01/17 Python
Python进阶-函数默认参数(详解)
2017/05/18 Python
Python中django学习心得
2017/12/06 Python
Django Rest framework之认证的实现代码
2018/12/17 Python
Python使用到第三方库PyMuPDF图片与pdf相互转换
2019/05/03 Python
Django框架文件上传与自定义图片上传路径、上传文件名操作分析
2019/05/10 Python
python opencv 实现对图像边缘扩充
2020/01/19 Python
HTML 5.1来了 9月份正式发布 更新内容预览
2016/04/26 HTML / CSS
英国性感内衣和睡衣品牌:Bluebella
2018/01/26 全球购物
煤矿安全生产月活动总结
2014/07/05 职场文书
罚站检讨书
2015/01/29 职场文书
如何理解Vue前后端数据交互与显示
2021/05/10 Vue.js
tensorboard 可视化之localhost:6006不显示的解决方案
2021/05/22 Python
Java实现简易的分词器功能
2021/06/15 Java/Android