pyautogui屏幕截图识别点击失败,如何解决?

新手上路,请多包涵
try:
    # 使用绝对路径
    button_image = os.path.abspath('r.png')
    if os.path.exists(button_image):
        print(f"图像文件 {button_image} 存在")
        # 在屏幕上查找图像
        button_location = pyautogui.locateOnScreen(button_image, confidence=0.8)
        if button_location:
            # 获取图像的中心坐标
            button_center = pyautogui.center(button_location)
            # 点击图像的中心坐标
            pyautogui.click(button_center)
            print(f"已点击识别到的按钮,坐标: {button_center}")
        else:
            print("未找到按钮图像")
            # 保存当前屏幕截图以便调试
            screenshot_path = os.path.join(os.path.expanduser('~'), 'Desktop', 'debug_screenshot.png')
            pyautogui.screenshot(screenshot_path)
            print(f"调试截图已保存到: {screenshot_path}")
    else:
        print(f"图像文件 {button_image} 不存在,请检查路径")
except Exception as e:
    print(f"屏幕截图识别失败: {e}")

图像文件 C:\Users\12486\Desktop\r.png 存在
屏幕截图识别失败:

我这是那地方有什么问题吗?
怎么样才可以使图片可以被识别

阅读 646
1 个回答

把try except去掉试下?
看了下pyautogui.locateOnScreen()方法,感觉是内部抛出的异常被你的try捕获到了
image.png
调试了下,好像是没找到图片这里抛出的异常内容为空,不太清楚这个方法,可以尝试使用opencv识别图像返回屏幕坐标

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏