我正在编写一个与电脑交互的机器人。简而言之,我所做的是:- 截取屏幕截图 - 在此屏幕截图上识别对象(使用 cv2 matchTemplate) -使用找到的位置进行一些鼠标操作(例如:将鼠标指针移动到在前一点找到的图标上) -从第一点重新开始现在,我必须与屏幕上移动的某个对象进行交互,因此我需要一种快速截屏的方法,或者另一种方法来完成这项工作,我该怎么办?
1 回答
温温酱
TA贡献1752条经验 获得超4个赞
您可以使用模块PyAutoGUI!
它有截图功能:
pyautogui.screenshot('my_screenshot.png')
鼠标移动和点击:
pyautogui.moveTo(100, 200) pyautogui.click()
以及屏幕上的基本图像位置:
button_location = pyautogui.locateOnScreen('button.png')
因此,如果您想单击屏幕上的某个图像,您可以运行:
x, y = pyautogui.locateCenterOnScreen('form_button.png') # Gets coords of center of image pyautogui.click(x, y)
正如他们网站上所说:
在 1920 x 1080 屏幕上,定位函数调用大约需要 1 或 2 秒。这对于动作视频游戏来说可能太慢了,但适用于大多数目的和应用程序。
所以请记住这一点。
添加回答
举报
0/150
提交
取消