如何使用 pyautogui 处理图像
How to use pyautogui for images
我想知道是否可以对整个文件夹执行 pyautogui.locateOnScreen()
这就是我的意思是一个包含 20 张不同图像并在屏幕上找到它们的文件夹。 pyautogui
可以吗?否则你会怎么做?
到目前为止,这是我的代码:
from pyautogui import locateAllOnScreen as find
import os
import numpy as np
def try_to_find(x):
x = os.path.isfile(x)
if x == None:
Warning('No images were enterd')
else:
folder = x
value = find(folder)
if value is not None:
print(f"{x} was found!")
else:
if value is None:
print(f"{x} was not found!")
return(list(value))
myfolder = ("ImageQuery")
found = 0
with os.scandir(myfolder) as entries:
for entry in entries:
if entry.is_file():
found+=1
print(f'Items {found}: {entry.name}')
try_to_find(entry.name)
如果我 运行 此代码 TypeError: expected an image filename, OpenCV numpy array, or PIL image
我会收到此错误
试试这个:
import os
import pyautogui as py
image_list = []
# Get list of all files in current directory
directory = os.listdir()
# Find files that end with .png or .jpg and add to image_list
for file in directory:
if file.endswith('.png') or file.endswith('.jpg'):
image_list.append(file)
# Loop through list to find all the images
for image in image_list:
print(image)
print(py.locateOnScreen(image))
这个问题和另一个问题类似,我在两个地方都发布了相同的答案。
我想知道是否可以对整个文件夹执行 pyautogui.locateOnScreen()
这就是我的意思是一个包含 20 张不同图像并在屏幕上找到它们的文件夹。 pyautogui
可以吗?否则你会怎么做?
到目前为止,这是我的代码:
from pyautogui import locateAllOnScreen as find
import os
import numpy as np
def try_to_find(x):
x = os.path.isfile(x)
if x == None:
Warning('No images were enterd')
else:
folder = x
value = find(folder)
if value is not None:
print(f"{x} was found!")
else:
if value is None:
print(f"{x} was not found!")
return(list(value))
myfolder = ("ImageQuery")
found = 0
with os.scandir(myfolder) as entries:
for entry in entries:
if entry.is_file():
found+=1
print(f'Items {found}: {entry.name}')
try_to_find(entry.name)
如果我 运行 此代码 TypeError: expected an image filename, OpenCV numpy array, or PIL image
试试这个:
import os
import pyautogui as py
image_list = []
# Get list of all files in current directory
directory = os.listdir()
# Find files that end with .png or .jpg and add to image_list
for file in directory:
if file.endswith('.png') or file.endswith('.jpg'):
image_list.append(file)
# Loop through list to find all the images
for image in image_list:
print(image)
print(py.locateOnScreen(image))
这个问题和另一个问题类似