按键精灵是一款常见的自动化操作工具,除了可以模拟鼠标、键盘等操作外,它还支持文字识别功能。在一些自动化流程中,我们需要读取特定区域的文本或者验证特定文本是否存在,就可以使用按键精灵的文字识别功能。下面将具体介绍如何在按键精灵中进行文字识别,以及如何利用Python打开按键精灵并使用其文字识别功能。
按键精灵的文字识别方法有两种:一种是分析整个窗口,找到特定文本所在位置;另一种是在特定的区域中查找文本。下面我们分别介绍这两种方法。
1.1 分析整个窗口
此方法效果较慢,但可以查找全局。
在按键精灵中,我们可以通过“图色模式”找到某个图像所在位置,然后基于此位置来进行文字识别。具体流程如下:
(1)打开要搜索的应用程序。
(2)在按键精灵中,选择“单色匹配”模式,并将颜色设置为黑色。
(3)使用鼠标截取要搜索的文本区域,并在截取的区域上右键选择“设置锁定区域”。
(4)使用“图像”匹配模式,在搜索框中输入待搜索的文本。
(5)在搜索结果中找到正确的匹配项,并记录其坐标。
(6)基于这个坐标,使用“键盘”模块输入一些特定的按键来选中这个位置。
(7)使用“图像”模块进行识别。
具体的代码实现如下:
win = win32gui.FindWindow(None, "要搜索的应用程序名称")
win32gui.SetForegroundWindow(win)
im = ImageGrab.grab(bbox=(x1, y1, x2, y2))
im.save(r'path\capture.png')
其中,x1、y1、x2、y2分别是文本区域的左上角和右下角的坐标。
1.2 查找特定区域