我正在编写一个脚本来自动登录 Zoom 会议,但是在运行代码时,只有 Zoom 应用程序打开,之后什么也没有发生。当我关闭缩放应用程序时,代码就会运行
import keyboard, mouse, time, subprocess
subprocess.call("C:\\Users\\Prathamesh\\AppData\\Roaming\\Zoom\\bin\\Zoom")
time.sleep(3)
x = [683, 577, 525, 709, 572, 700]
y = [360, 323, 483, 523, 325, 519]
for i in range(6):
mouse.move(x[i], y[i])
mouse.click()
if i == 1:
time.sleep(2)
keyboard.write("meetingid")
elif i == 4:
time.sleep(3)
keyboard.write("password")
elif i == 5:
time.sleep(5)
time.sleep(3)
晚上好,
我认为你的问题源于这样一个事实:根据库的文档,
subprocess.call()
命令等待任务完成或终止以便让程序继续。
这里是子进程库的Python文档:https://docs.python.org/3/library/subprocess.html
问题是Python不是多线程的,因此程序的流程会停止,直到您正在执行的函数结束为止。我要做的就是导入线程库并使用它来调用执行命令的函数。
类似这样的:
import keyboard, mouse, time, subprocess
from threading import Thread
def OpenZoom():
subprocess.call("C:\\Users\\Prathamesh\\AppData\\Roaming\\Zoom\\bin\\Zoom")
thrd = Thread(target=OpenZoom)
thrd.start()
time.sleep(3)
x = [683, 577, 525, 709, 572, 700]
y = [360, 323, 483, 523, 325, 519]
for i in range(6):
mouse.move(x[i], y[i])
mouse.click()
if i == 1:
time.sleep(2)
keyboard.write("meetingid")
elif i == 4:
time.sleep(3)
keyboard.write("password")
elif i == 5:
time.sleep(5)
time.sleep(3)
我希望这能回答您的问题。