我的pyautogui始终不返回图像。图像与程序位于同一文件夹中。图像名称与我另存为的名称相同。这些图像是最新的,并且肯定在我的屏幕上。请帮助,pyautogui始终对locateOnScreen不返回任何内容。这是我的代码:
import time
import sys
import pyautogui
pyautogui.FAILSAFE = True
pyautogui.PAUSE = 1
pyautogui.size()
width, height = pyautogui.size()
y = pyautogui.locateOnScreen('LOLicon.png')
print(y)
for i in range(2):
x = pyautogui.moveTo(y)
pyautogui.click(x)
time.sleep(2)
pyautogui.doubleClick()
del x
del y
答案 0 :(得分:0)
import time
import sys
import pyautogui
pyautogui.FAILSAFE = True
pyautogui.PAUSE = 1
pyautogui.size()
width, height = pyautogui.size()
y = pyautogui.locateOnScreen('LOLicon.png')
print(y)
for i in range(2):
x = pyautogui.moveTo(y[0:2])
pyautogui.click(x)
time.sleep(2)
pyautogui.doubleClick()
以上内容非常有效。唯一的代码更改是x = pyautogui.moveTo(y[0:2])
。
因此,请确保在运行脚本时图像确实在屏幕上(未被代码编辑器或其他窗口隐藏)和 LOLicon.png
的图像内容实际上就是您所假设的。
检查以下代码是否有帮助:
import pyautogui
im = pyautogui.screenshot(region=(20, 20, 50, 50))
im.save("myScreenshot.png")
y = pyautogui.locateOnScreen("myScreenshot.png")
print(y)
x = pyautogui.moveTo(y[0:2])
运行正常,没有错误。如果是这样,您可以将myScreenshot.png
重命名为LOLicon.png
并进行调整,region=(20, 20, 50, 50)
使其在屏幕上捕获LOLicon。
在https://pyautogui.readthedocs.io/en/latest/screenshot.html?highlight=save%20image中查看pyautogui中的屏幕截图功能的详细信息,并确保已安装必需的模块(如果您使用Linux,则安装Pillow并最终scrot)。