一、使用 `pygetwindow` 库(Python脚本)
适用于自动化测试或批量操作,通过Python脚本获取窗口句柄并控制窗口。
步骤:
安装库 ```bash
pip install pygetwindow
```
获取窗口对象
```python
import pyautogui
import pygetwindow as gw
通过标题获取窗口
window = gw.getWindowsWithTitle('窗口标题')
或者通过类名获取
window = gw.getWindowsByClass('窗口类名')
确保窗口已激活
window.activate()
```
与窗口交互
使用 `pyautogui` 提供的方法,如 `input()`、`click()`、`type()` 等:
```python
在窗口中输入文本
pyautogui.write('Hello, World!', interval=0.25)
模拟按键操作
pyautogui.press('enter')
```
注意事项:
窗口标题需唯一或通过其他属性筛选;
部分窗口可能需要先激活才能操作。
二、使用窗口句柄(如按键精灵)
适用于需要长期监控或复杂交互的场景,通过插件或工具直接绑定窗口句柄。
步骤:
获取窗口句柄
使用工具如 Process Explorer、 Win32 API或第三方库(如 `pywin32`)获取目标窗口的句柄(如 `HWND`)。
绑定窗口
使用插件命令绑定窗口句柄,例如在按键精灵中输入:
```plaintext
绑定窗口句柄 0x12345678
```
*注意:需将 `0x12345678` 替换为实际窗口句柄*。
后台运行脚本
绑定后,可以使用插件命令模拟按键、鼠标操作等,且脚本可在后台持续运行。
注意事项:
不同工具对窗口类名的识别可能不同,需提前确认;
绑定后窗口通常保持可见,无法最小化(仅能遮挡)。
补充说明
多窗口处理: 若窗口标题不唯一,可使用 `gw.getAllWindows()` 筛选后手动选择目标窗口; 稳定性
权限问题:部分操作需以管理员权限运行。
根据具体需求选择合适方法,若需自动化脚本开发,推荐使用 `pygetwindow`;若需长期监控或复杂交互,建议使用专业工具如按键精灵或 `pywin32`。