Уведомления

Группа в Telegram: @pythonsu

#1 Март 4, 2024 08:57:06

Chris228
Зарегистрирован: 2024-03-04
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Не работает проверка всех изображений в коде

Это бот для распознания изображения и цены возле нее, мне нужно что бы он мог проверять много изображений в данной области, но он просто проверяет первое изображение а на остальное забывает.
Помогите пожалуйста

import pyautogui
import pytesseract
from PIL import Image

# Пути к каждому изображению и соответствующая им цена
images_with_prices = {
“C:\\Image\\obez.png”: 4000,
“C:\\Image\\semen.png”: 800,
}

# Функция для распознавания цены на скриншоте
def recognize_price(region):
# Сделать скриншот указанной области
screenshot = pyautogui.screenshot(region=region)

# Преобразовать скриншот в изображение
img = Image.frombytes('RGB', screenshot.size, screenshot.tobytes())

# Распознать текст на изображении
text = pytesseract.image_to_string(img, config='–oem 3 –psm 6 outputbase digits')

# Вернуть распознанный текст
return text.strip()


while True:
try:
for image_path, price in images_with_prices.items():
# Определить координаты области, где должно быть найдено изображение
search_region = (480, 180, 370, 175) # (слева, сверху, ширина, высота)

# Искать изображение в ограниченной области
locate = pyautogui.locateOnScreen(image_path, confidence=0.99, region=search_region)
print(locate) # Добавьте эту строку для вывода результата поиска
if locate is not None:
# Определить координаты области, где должна быть цена
price_region = (680, 225, 80, 35) # (слева, сверху, ширина, высота)

# Распознать цену на скриншоте указанной области
price_text = recognize_price(price_region)

# Здесь вы можете добавить логику, чтобы проверить цену и выполнить какие-либо действия, если цена ниже
if price_text:
# Проверка, состоит ли текст только из цифр
if price_text.isdigit():
price = float(price_text)
print(price_text)
if price < images_with_prices:
# Выполнить действие, если цена ниже
pyautogui.click(locate)
pass
else:
print(“Невозможно распознать цену”)
pass
else:
# Если изображение не найдено, переходим к следующему изображению
continue

except pyautogui.ImageNotFoundException:
pass # Продолжаем цикл, если изображение не найдено

Офлайн

#2 Март 4, 2024 10:57:48

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Не работает проверка всех изображений в коде

оберните код тегом - нечитабельно



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version