如何在Python中从PyAutoGui的Box提取坐标用于click()方法?
提取PyAutoGui Box对象的坐标并实现图标点击
你打印出来的Box是PyAutoGui返回的对象,它的left和top属性就是你需要的X、Y数值坐标,直接通过对象.属性名的方式就能提取,逻辑和C++里访问结构体成员类似。
修改后的代码示例
import pyautogui # 定位屏幕上所有目标图标 coordinates = pyautogui.locateAllOnScreen('eachIcon.png') for element in coordinates: # 提取图标左上角的X、Y坐标 x = element.left y = element.top print(f"图标左上角坐标:X={x}, Y={y}") # 点击图标左上角 pyautogui.click(x, y) # 更推荐点击图标中心(避免点击无效区域),可以用以下代码替换上面的点击语句 # center_x, center_y = pyautogui.center(element) # pyautogui.click(center_x, center_y)
关键说明
element.left和element.top直接返回整数类型的坐标值,可直接传入pyautogui.click()使用。- 若图标点击区域要求严格,优先用
pyautogui.center(element)获取中心坐标,能提升点击的有效性。
内容的提问来源于stack exchange,提问作者Kenji Lum
相关产品推荐
相关产品推荐

