generateScriptFile.py脚本

#!/usr/bin/env python
# -*- coding: utf-8 -*- """
use case:
python ./generateScriptFile.py
""" import MySQLdb
import sys
import os
from lxml import etree #IP=sys.argv[1]
IP="10.0.20.252"
DIR="ScriptsDir"
try:
print "connect to database..."
acheron_db=MySQLdb.connect(IP,"root","Free-Wi11","acheron_db")
except Exception as e:
print e.message
print "Can't connect to "+IP
exit(1)
print "Done..."
print "Ready to read data from database..."
acheron_db_cursor=acheron_db.cursor() sqlCMD="select Description,TestScript from Script where Class='System'"
acheron_db_cursor.execute(sqlCMD)
content=acheron_db_cursor.fetchall()
if len(content)==0:
print "no data obtained"
exit(1)
if os.path.exists(DIR):
os.system("RD /S /Q " + DIR)
os.system("mkdir "+DIR)
for item in content:
file_name=item[0]
if len(file_name)==0:
print item
continue directory=item[0].split(".")[0]
if len(directory)==0:
print item[0]
continue
if not os.path.exists(DIR+"\\"+directory):
os.system("mkdir "+DIR+"\\"+directory)
try:
f=open(DIR+"\\"+directory+"\\"+file_name+".xml","w")
root=etree.fromstring(item[1])
f.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
f.write(etree.tostring(root))
#f.write(etree.tostring(root,xml_declaration=True,encoding='UTF-8'))
f.close()
except Exception as e:
print file_name
print e.message
print "Failed, please retry..."
break
print "See scripts data file in '"+DIR+"'"
print "Done"

装Python的依赖库

安装MySQLdb

http://www.codegood.com/download/11/

下载:MySQL-python-1.2.3.win-amd64-py2.7.exe

点击安装

Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:53:40) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
>>>

安装lxml

安装lxml之前,先安装pip,然后借助pip来安装lxml

下载pip:https://pypi.python.org/pypi/pip#downloads%20%EF%BC%9A

pip的安装步骤:

进入解压后的pip文件夹下,可以看到有setup.py

下载完成之后,解压到一个文件夹里,用cmd控制台进入解压目录,然后输入:python setup.py install

安装好后,在PATH中添加环境变量:C:\Python27\Scripts;

然后就可以使用pip命令了,使用pip list查看使用pip安装的依赖包:

安装完pip后,就可以使用pip来安装lxml依赖了:

使用pip install lxml,安装完成。

然后修改脚本

原先的脚本是能正常运行在linux环境中的,但是目前要移植到windows 64位环境中使用:

1.f=open(DIR+"/"+directory+"/"+file_name+".xml","w") 改为 f=open(DIR+"\\"+directory+"\\"+file_name+".xml","w")

2.linux下使用的命令,如删除命令要改为windows下的命令:os.system("RD /S /Q  " + DIR)

Windows强制删除文件及文件夹命令

RD /S /Q 文件夹名 : 强制删除文件夹文件以及文件夹中的所有文件

DEL /F /A /Q 文件夹名:强制删除文件夹及文件夹下的所有文件,并且不给提示

如果要删除文件,则必须给出文件的后缀名。

generateScriptFile.py脚本使用过程中遇到的问题及解决的更多相关文章

  1. Selenium2学习-018-WebUI自动化实战实例-016-自动化脚本编写过程中的登录验证码问题

    日常的 Web 网站开发的过程中,为提升登录安全或防止用户通过脚本进行黄牛操作(宇宙最贵铁皮天朝魔都的机动车牌照竞拍中),很多网站在登录的时候,添加了验证码验证,而且验证码的实现越来越复杂,对其进行脚 ...

  2. 将html代码部署到阿里云服务器,并进行域名解析,以及在部署过程中遇到的问题和解决方法

    本博客主要是说一下,,如何将html代码部署到阿里云服务器,并进行域名解析,以及在部署过程中遇到的问题和解决方法. 1.先在阿里云上购买一台阿里云服务器(ECS云服务器): 2.远程连接上该服务器,在 ...

  3. iOS 学习笔记二【cocopods安装使用和安装过程中遇到的问题及解决办法】【20160725更新】

    在osx 10.11之前cocopods问题不多,但是升级到11之后的版本,之前的cocopods大多用不了,需要重新安装,对于我这种使用测试版系统的技术狂来说,每次都需要重新安装很多东西, 当然,c ...

  4. Visual studio 2015 Community 安装过程中遇到问题的终极解决

    早就有给自己电脑升级VS的想法,可是安装过程并不顺利,一直拖到现在,昨天下定决心,把遇到的问题一个个解决,终于安装成功了,将安装过程中遇到的问题和解决方法记录一下. 需要说明一下的是,不同的电脑环境可 ...

  5. iOS cocopods安装使用和安装过程中遇到的问题及解决办法

    在osx 10.11之前cocopods问题不多,但是升级到11之后的版本,之前的cocopods大多用不了,需要重新安装,对于我这种使用测试版系统的技术狂来说,每次都需要重新安装很多东西, 当然,c ...

  6. 国内不fq安装K8S四: 安装过程中遇到的问题和解决方法

    目录 4 安装过程中遇到的问题和解决方法 4.1 常见问题 4.2 常用的操作命令 4.3 比较好的博客 国内不fq安装K8S一: 安装docker 国内不fq安装K8S二: 安装kubernet 国 ...

  7. 【原创】控制perl和python脚本执行过程中脚本文件是否关闭的方法

    引子 跟踪perl和python脚本对文件的访问,实际过程中,perl和python解析器在解析完脚本后,直接关闭了 脚本文件,在进程中查询不到是访问文件的脚本文件名称. shell.perl和pyt ...

  8. caffe安装过程中遇到的问题以及解决方法

    1. 在安装依赖库的时候,遇到: @gxjun-Latitude-E5440:~$ sudo apt-get install libatlas-base-dev 正在读取软件包列表... 完成 正在分 ...

  9. Tomcat启动过程中找不到JAVA_HOME解决方法

    在XP上明明已经安装了JDK1.5并设置好了JAVA_HOME,可偏偏Tomcat在启动过程中找不到. 报错信息如下:Neither the JAVA_HOME nor the JRE_HOME en ...

随机推荐

  1. Hadoop中MapReduce计算框架以及HDFS可以干点啥

    我准备学习用hadoop来实现下面的过程: 词频统计 存储海量的视频数据 倒排索引 数据去重 数据排序 聚类分析 ============= 先写这么多

  2. 深入分析DDR(转载)

    深入分析:我们为何需要DDR2内存技术 http://www.cnblogs.com/thx-bj/archive/2008/04/02/1134040.html 文/IT168评测室特约 Myddn ...

  3. HashMap与ConcurrentHashMap的区别(转)

    从JDK1.2起,就有了HashMap,正如前一篇文章所说,HashMap不是线程安全的,因此多线程操作时需要格外小心. 在JDK1.5中,伟大的Doug Lea给我们带来了concurrent包,从 ...

  4. 【BZOJ】1650: [Usaco2006 Dec]River Hopscotch 跳石子(二分+贪心)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1650 看到数据和最小最大时一眼就是二分... 但是仔细想想好像判断时不能贪心? 然后看题解还真是贪心 ...

  5. 滚动到指定位置js

    function mScroll(id){ $("html,body").stop(true); $(); }

  6. MyBitis(iBitis)系列随笔之六:mybitis与spring集成

    目前Spring官方还没有出整合Mybatis的特性,但是mybitis比较给力,开发了一个mybatis-spring插件,达到与Spring的完美整合目的. 在与Spring集成前,一方面我们需要 ...

  7. mathtype免费版下载及序列号获取地址

    在编辑公式这个方面来说,MathType是使用最多的一个工具,因为它操作简单,不需要复杂的学习过程就可以很快地掌握操作技巧,并且功能也比Office自带的公式编辑器完善很多,可以对公式进行批量修改.编 ...

  8. sublime window 配置记录 (转)

    大家好,今天给大家分享一款编辑器:sublime text2    我用过很多编辑器,EditPlus.EmEditor.Notepad++.Notepad2.UltraEdit.Editra.Vim ...

  9. Android设计模式之单例模式的七种写法

    一 单例模式介绍及它的使用场景 单例模式是应用最广的模式,也是我最先知道的一种设计模式.在深入了解单例模式之前.每当遇到如:getInstance()这样的创建实例的代码时,我都会把它当做一种单例模式 ...

  10. Spring_day03--课程安排_基于aspectj的注解aop_Spring的jdbcTemplate操作

    Spring_day03 上节内容回顾 今天内容介绍 基于aspectj的注解aop Spring的jdbcTemplate操作 增加 修改 删除 查询 Spring配置c3p0连接池和dao使用jd ...