python解析文件示例


Posted in Python onJanuary 23, 2014

python最近的工作主要是组件兼容性测试,原有的框架有很多功能还不完善,需要补充!比如,需要将AutoIt脚本的执行结果写入到Excel中,最后的解决方案是使用本地的log来解析这个结果!

增加了如下一个类来完成上述功能:

class AutoItResultParser():
    def ParseResult(self, vm_result, log_file):
        for case_result in vm_result.cases_results:
            self.__ModifyAutoItResult(case_result, log_file)    def __ModifyAutoItResult(self, result, log_file):
        items = []
        myfile = open(log_file, 'rb')
        line = myfile.readline()
        count = 0
        while('' != line):
            items.append(line.split(':')[0])
            count += 1
            if(count % 2 == 0):
                items.append(line.split(':')[1])
            line = myfile.readline()
        myfile.close()
        fail_scripts = []
        length = len(items)
        arr = list(range(2, length, 3))
        for i in arr:
            test = items[i].lower()
            if test.rfind('success') == -1:
                fail_scripts.append((items[i - 2], items[i - 1]))
        for script in fail_scripts:
            if script[0] == result.case_name:
                if script[1] == 'Installation':
                    result.install_script_success = False
                elif script[1] == 'Launch':
                    result.launch_script_success = False
                elif script[1] == 'Function':
                    result.function_script_success = False
                else:
                    result.uninstall_script_success = False

这里的log_file文件内容类似如下:

VisualStudio2010_StandaloneProfiler:
Installation:   Success
VisualStudio2010_StandaloneProfiler:
Launch:         Success
VisualStudio2010_StandaloneProfiler:
Function:       Fail
TaobaoBrowser_2.0.0:
CitrixOfflinePlugin_6.5:
Installation:   Success
CitrixOfflinePlugin_6.5:
Function:       Success
TrusteerRapport:
TNTShippingTools:
Installation:   Success
TNTShippingTools:
Launch:         Success
WGET_1.11.4:
Installation:   Success
VisualStudio2010_StandaloneProfiler:
Uninstallation: Success
TNTShippingTools:
Uninstallation: Fail
Python 相关文章推荐
Python操作列表的常用方法分享
Feb 13 Python
python实现基于两张图片生成圆角图标效果的方法
Mar 26 Python
Python命令行参数解析模块getopt使用实例
Apr 13 Python
深入解析Python中的list列表及其切片和迭代操作
Mar 13 Python
如何将python中的List转化成dictionary
Aug 15 Python
Python实现求笛卡尔乘积的方法
Sep 16 Python
Python实现mysql数据库更新表数据接口的功能
Nov 19 Python
python3.6 实现AES加密的示例(pyCryptodome)
Jan 10 Python
python2.7无法使用pip的解决方法(安装easy_install)
Apr 03 Python
python进行TCP端口扫描的实现
Dec 21 Python
基于Django ORM、一对一、一对多、多对多的全面讲解
Jul 26 Python
Python爬虫之Spider类用法简单介绍
Aug 04 Python
python回调函数的使用方法
Jan 23 #Python
python中的对象拷贝示例 python引用传递
Jan 23 #Python
使用scrapy实现爬网站例子和实现网络爬虫(蜘蛛)的步骤
Jan 23 #Python
python使用scrapy解析js示例
Jan 23 #Python
php使用递归与迭代实现快速排序示例
Jan 23 #Python
python实现批量转换文件编码(批转换编码示例)
Jan 23 #Python
python写的一个文本编辑器
Jan 23 #Python
You might like
PHP设计模式之简单投诉页面实例
2016/02/24 PHP
Yii安装与使用Excel扩展的方法
2016/07/13 PHP
php 判断过去离现在几年的函数(实例代码)
2016/11/15 PHP
PHP单态模式简单用法示例
2016/11/16 PHP
php正则提取html图片(img)src地址与任意属性的方法
2017/02/08 PHP
List all the Databases on a SQL Server
2007/06/21 Javascript
学习ExtJS accordion布局
2009/10/08 Javascript
js 页面传参数时 参数值含特殊字符的问题
2009/12/13 Javascript
为原生js Array增加each方法
2012/04/07 Javascript
js模拟点击事件实现代码
2012/11/06 Javascript
jQuery异步获取json数据方法汇总
2014/12/22 Javascript
JavaScript中的操作符==与===介绍
2014/12/31 Javascript
javascript创建动态表单的方法
2015/07/25 Javascript
举例讲解JavaScript中关于对象操作的相关知识
2015/11/16 Javascript
JS组件Bootstrap Table使用实例分享
2016/05/30 Javascript
JavaScript中函数声明与函数表达式的区别详解
2016/08/18 Javascript
vue 实现 ios 原生picker 效果及实现思路解析
2017/12/06 Javascript
使用webpack搭建react开发环境的方法
2018/05/15 Javascript
vue+elementUI 复杂表单的验证、数据提交方案问题
2019/06/24 Javascript
解决layui的form里的元素进行动态生成,验证失效的问题
2019/09/14 Javascript
vue 使用 vue-pdf 实现pdf在线预览的示例代码
2020/04/26 Javascript
html5以及jQuery实现本地图片上传前的预览代码实例讲解
2021/03/01 jQuery
[02:22:36]《加油!DOTA》总决赛
2014/09/19 DOTA
python实现颜色rgb和hex相互转换的函数
2015/03/19 Python
python的scipy实现插值的示例代码
2019/11/12 Python
Ubuntu16.04安装python3.6.5步骤详解
2020/01/10 Python
浅谈Python的方法解析顺序(MRO)
2020/03/05 Python
Python使用pyyaml模块处理yaml数据
2020/04/14 Python
python连接手机自动搜集蚂蚁森林能量的实现代码
2021/02/24 Python
如何在网站上添加谷歌定位信息
2016/04/16 HTML / CSS
西班牙网上书店:Casa del Libro
2016/11/01 全球购物
安德玛加拿大官网:Under Armour加拿大
2019/10/02 全球购物
js实现弹框效果
2021/03/24 Javascript
晚会主持人开场白台词
2015/05/28 职场文书
一波干货,会议主持词开场白范文
2019/05/06 职场文书
Navicat连接MySQL错误描述分析
2021/06/02 MySQL