0

脚本应该打开 java 文件并填充输入,因此它会打开文件但它不会执行后面的代码并且不会在控制台中显示任何错误。但是,如果我手动打开文件并在不打开文件的情况下运行代码,那么一切正常

from pywinauto import application
import pyautogui
import subprocess

subprocess.call(['java', '-jar', 'C:\\Users\\User\\Desktop\\Folder\\file.jar'],shell=True)

time.sleep(3)
pyautogui.typewrite("login")
time.sleep(3)
pyautogui.moveTo(611,601)
pyautogui.click()
time.sleep(1)
pyautogui.click()
time.sleep(40)
4

2 回答 2

1

subprocess.call等待子进程完成。你必须subprocess.Popen改用。

于 2017-02-13T11:21:31.260 回答
0

Subprocesscall不能同时使用参数列表shell=True。要么你说shell=False要么你把列表加入一个字符串。

例如你可以说:

subprocess.call(" ".join(['java', '-jar', 'C:\\Users\\User\\Desktop\\Folder\\file.jar']), shell=True)
于 2017-02-13T11:21:59.847 回答