本帖最后由 xuming98 于 2024-8-17 15:56 编辑
ygq170063 发表于 2024-8-17 09:32
[Asm] 纯文本查看 复制代码
import pyautogui
import time
import win32gui
import win32con
import os
import sys
import subprocess
def switch_to_program(program_name):
# 获取所有窗口的句柄
hwnd_title = dict()
def callback(hwnd, hwnd_title):
if win32gui.IsWindow(hwnd) and win32gui.IsWindowEnabled(hwnd):
title = win32gui.GetWindowText(hwnd)
hwnd_title[hwnd] = title
win32gui.EnumWindows(callback, hwnd_title)
# 在所有窗口标题中查找指定的程序名
for hwnd, title in hwnd_title.items():
if program_name in title:
win32gui.ShowWindow(hwnd, win32con.SW_RESTORE) # 恢复窗口
win32gui.SetForegroundWindow(hwnd) # 切换焦点到该窗口
break
# 使用示例
switch_to_program("Fiddler") # 假设“记事本”是打开的程序名的一部分
# 按下Ctrl键
pyautogui.keyDown('ctrl')
# 等待一会儿,确保Ctrl键被识别为按下状态
time.sleep(0.1)
# 按下x键
pyautogui.keyDown('x')
# 释放x键
pyautogui.keyUp('x')
# 释放Ctrl键
pyautogui.keyUp('ctrl')
def switch_to_program(program_name):
# 获取所有窗口的句柄
hwnd_title = dict()
def callback(hwnd, hwnd_title):
if win32gui.IsWindow(hwnd) and win32gui.IsWindowEnabled(hwnd):
title = win32gui.GetWindowText(hwnd)
hwnd_title[hwnd] = title
win32gui.EnumWindows(callback, hwnd_title)
# 在所有窗口标题中查找指定的程序名
for hwnd, title in hwnd_title.items():
if program_name in title:
win32gui.ShowWindow(hwnd, win32con.SW_RESTORE) # 恢复窗口
win32gui.SetForegroundWindow(hwnd) # 切换焦点到该窗口
break
# 使用示例
switch_to_program("装配答题") # 假设“记事本”是打开的程序名的一部分
pyautogui.click(1500, 725)
def switch_to_program(program_name):
# 获取所有窗口的句柄
hwnd_title = dict()
def callback(hwnd, hwnd_title):
if win32gui.IsWindow(hwnd) and win32gui.IsWindowEnabled(hwnd):
title = win32gui.GetWindowText(hwnd)
hwnd_title[hwnd] = title
win32gui.EnumWindows(callback, hwnd_title)
# 在所有窗口标题中查找指定的程序名
for hwnd, title in hwnd_title.items():
if program_name in title:
win32gui.ShowWindow(hwnd, win32con.SW_RESTORE) # 恢复窗口
win32gui.SetForegroundWindow(hwnd) # 切换焦点到该窗口
break
# 使用示例
switch_to_program("Fiddler") # 假设“记事本”是打开的程序名的一部分
# 延时1秒
time.sleep(1)
# 移动鼠标到坐标(x=600, y=125)
pyautogui.moveTo(x=600, y=125)
# 执行鼠标右键点击
pyautogui.click(button='right')
pyautogui.click(700, 260)
pyautogui.click(950, 330)
def close_notepad():
# 使用任务管理器结束记事本进程
subprocess.run(['taskkill', '/im', 'notepad.exe', '/f'])
if __name__ == "__main__":
close_notepad()
# 执行左键双击
pyautogui.click(115, 915, button='left', clicks=2)
非常感谢!完美的运行!
能不能再给整理完整代码,我再您的代码里继续添加后续代码最后还是失败,给您添麻烦了
|