【发布时间】:2016-06-11 09:09:42
【问题描述】:
当我尝试使用 pyautogui 识别图像时,它只会显示:None
import pyautogui
s = pyautogui.locateOnScreen('Dark.png')
print s
当我运行此代码时,图片在我的屏幕上,但仍然失败。
【问题讨论】:
当我尝试使用 pyautogui 识别图像时,它只会显示:None
import pyautogui
s = pyautogui.locateOnScreen('Dark.png')
print s
当我运行此代码时,图片在我的屏幕上,但仍然失败。
【问题讨论】:
Pyautogui.locateOnScreen 有一个参数,用于指定您对输入图像的“置信度”。
这样,pyautogui 将处理轻微的像素偏差。
例如:
import pyautogui
s = pyautogui.locateOnScreen('Dark.png', confidence=0.9)
print(s)
如需更多信息,请参阅https://buildmedia.readthedocs.org/media/pdf/pyautogui/latest/pyautogui.pdf。
【讨论】:
像素完美。
如果不是 100% 匹配,则无法找到该图像。
例如,我使用 Opera 扩展裁剪了一个区域。然后我用 Firefox 运行我的脚本,pyautogui 无法识别它。
【讨论】:
在我的系统上,如果图片在第二台显示器上,我会得到这个。如果我将它移动到主屏幕,则图像定位成功。
看起来多显示器功能尚未实现: 来自http://pyautogui.readthedocs.org/en/latest/roadmap.html
计划的未来功能(具体版本尚未计划):
- 查找所有窗口及其标题的列表。
- 单击相对于窗口的坐标,而不是整个屏幕。
- 使在具有多台显示器的系统上工作更轻松。
- ...
【讨论】: