from subprocess import call
import os
call(['robot '+os.getcwd()+'\\aaa.robot'])
file_dir:D:/aaa/test/aaa.robot
现在在同一个目录中的脚本
Output:
Traceback (most recent call last):
File "__init.py", line 7, in <module>
call(['robot '+os.getcwd()+'\\aaa.robot'])
File "C:\Python27\lib\subprocess.py", line 522, in call
return Popen(*popenargs, **kwargs).wait()
File "C:\Python27\lib\subprocess.py", line 710, in __init_
errread, errwrite)
File "C:\Python27\lib\subprocess.py", line 958, in _execut
startupinfo)
WindowsError: [Error 2] Nie mo┐na odnalečŠ okreťlonego pliku
我无法处理它。我不明白为什么在python中调整任何东西都是如此复杂:(
我想要与此行相同的结果(直接写入cmd):
/>robot aaa.robot
答案 0 :(得分:6)
这是另一种方式
import robot
logFile = open('mylog.txt', 'w')
robot.run("tmp.robot",stdout=logFile)
答案 1 :(得分:4)
subprocess
需要一个列表,但您输入了一个字符串('robot '+os.getcwd()+'\\aaa.robot'
)。
尝试:
call(['C:/Python27/python.exe', '-m', 'robot', 'D:/aaa/test/aaa.robot'])
或
call(['C:/Python27/Scripts/robot.bat', 'D:/aaa/test/aaa.robot'])