python调用vbs
1. python做软件自动化测试的入门提问
做自动化首先得选择用什么样的测试工具,python只是用来编写测试脚本用
目前支持python脚本的测试工具也有一些,web测试:selenium,性能测试:LR也支持,功能:QTP目前也支持,但这些工具传统上都是只支持C/C++、VBS的,扩展支持python后效果怎样不是很清楚了。另外,在安卓平台结合MonkeyRunner 测试手机软件效果是很好的。
除此之外,python也可用于C/C++的单元测试。
2. python怎么调用vbs脚本
subprocess.call('cscript xxx.vbs')
3. 如何在ARCGIS10中用婀VBS或PYTHON进行连续编号
打开字段计算器,选择python,然后输入以下代码:代码块:rec=0def autoIncrement(): global rec pStart = 1 pInterval = 1 if (rec == 0): rec = pStart else: rec = rec + pInterval return rec 表达式:autoIncrement()
4. 如何构建命令行下的Python菜单选项
import time
#from 调用VBS语音播读 import h_读
def h_读(a):
return a
wt1 = input(h_读('您好,欢迎古灵阁,请问您需要帮助吗?1需要or2不需要?'))
if wt1 == '1' or wt1 == '需要':
wt2 = input(h_读('请问您需要什么帮助呢?1存取款,2货币兑换,3咨询'))
if wt2 == '1' or wt2 == '存取款':
print(h_读('小精灵推荐你去存取款窗口;'))
elif wt2 == '2' or wt2 == '货币兑换':
print(h_读('金加隆和人民币的兑换率为1:51.3,即一金加隆=51.3人民币,桥等于10亿'))
time.sleep(1)
wt3 = input(h_读('请问您需要兑换多少金加隆呢?'))
time.sleep(1)
if wt3 == '桥':
print(h_读('恭喜你中奖了。'))
try:
wt33 = float(wt3)
print(h_读('好的,我知道了,您需要兑换' + wt3 + '金加隆。'))
time.sleep(1)
print(h_读('正在计算'))
time.sleep(1)
wt34 = wt33 * 51.3
wt35 = str(wt34)
print(h_读('那么,您需要付给我' + wt35 + '人民币'))
except:
if wt3 != '桥':
print(h_读('你输入的不是数字。把你关起来呀'))
else:
print(h_读('小精灵推荐你去咨询窗口'))
else:
print(h_读('好的,再见。'))
input(h_读("再见"))
这个实例你运行一下就明白了
5. Python设计一个用户名和密码
name=input()
if name=='这个地方是你判断用的用户名':
缩进pass=input()
缩进if pass=='这里是你判断的密码':
缩进缩进print('用户名密码都对')
缩进else:
缩进缩进print('密码不对')
else:
缩进print('用户名不对')
6. python 调用bat,怎么取消doc窗口,用vbs调用也不行
单纯 bat 本身并不具备隐藏运行的功能 不过用vbs调用bat就可以实现 Set ws = CreateObject("Wscript.Shell") ws.run "cmd /c 2002.bat",vbhide 这个就是vbs调用同目录下 名为 2002.bat 的批处理隐藏运行
7. VBS实现解密功能
8. python使用subprocess.Popen运行bat脚本时报不支持输入重新定向错误分析
大图请右击在新标签页打开
Popen默认shell参数为False:
为True时默认使用 COMSPEC 环境变量指定的程序为shell:
在Windows上默认为cmd:
args参数为命令字符串时,因为dir是cmd的内建命令,需要指定shell=True:
例如:
而timeout,ping等都是独立的exe,可以不需要cmd:
args参数是文件路径形式时:
底层是调用了Windows的API,如下:
调试:
测试:
从调试结果以及测试来看,对于bat文件,可以不写lpApplicationName参数,Windows会自动使用cmd来运行(使用vbs文件测试返回错误:不是正确的win32程序,要指定lpApplicationName为cscript.exe才行,可能只有bat才有这个特权了)。
输入重定向的问题:
Popen是用创建子进程的方式来执行的,而timeout.exe在暂停时,可接受用户按键来终止,这个时候会需要输入,但是Popen给子进程的stdin只有
并不能让timeout重定向到用户输入上,所以出错。
解决的方法有很多,最简单的替换掉timeout语句为ping -w xxx 127.0.0.1 或者直接由python来接管timeout。
9. vbs可以调用python脚本吗
可以,在vbs中用wshell.run执行脚本文件,前提是你系统中已部署好pyhton:
SetoShell=WScript.CreateObject("WSCript.shell")
oShell.run"s.py"
SetoShell=Nothing
效果如下: