Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помощь с скриптом Python

Нинк Ученик (72), на голосовании 2 месяца назад
Нужно изменить способ проверки цветов на эту схему Цвет(уже введен) > цвет(получаемый из координаты) < цвет(уже введен)
color1 = pyautogui.pixel(261, 270)
if color1 == (105, 127, 163):
pyautogui.click (260, 272)
Голосование за лучший ответ
HAKER HAKER Знаток (370) 3 месяца назад
import pyautogui

# Вводим желаемые цвета в формате RGB (красный, зеленый, синий)
color_lower = (100, 120, 155) # Нижняя граница цветового диапазона
color_upper = (110, 135, 170) # Верхняя граница цветового диапазона

# Получаем цвет пикселя
color1 = pyautogui.pixel(261, 270)

# Проверка, попадает ли цвет в заданный диапазон
if color_lower[0] <= color1[0] <= color_upper[0] and \
color_lower[1] <= color1[1] <= color_upper[1] and \
color_lower[2] <= color1[2] <= color_upper[2]:
# Если цвет находится в диапазоне, кликаем по координатам
pyautogui.click (260, 272)
Объяснение:

Ввод цветового диапазона:
Определяем два цвета color_lower и color_upper, представляющие нижнюю и верхнюю границы желаемого цветового диапазона.
Цвет в диапазоне должен быть больше или равен color_lower и меньше или равен color_upper по всем трем каналам RGB.
Получение цвета пикселя:
Используем pyautogui.pixel() для получения цвета пикселя по заданным координатам (261, 270).
Проверка цвета:
Используем логическое выражение and для проверки, удовлетворяет ли цвет пикселя всем требованиям:
color_lower[0] <= color1[0] <= color_upper[0] - проверка красного канала
color_lower[1] <= color1[1] <= color_upper[1] - проверка зеленого канала
color_lower[2] <= color1[2] <= color_upper[2] - проверка синего канала
Клик по координатам:
Если цвет пикселя попадает в заданный диапазон, выполняем клик по координатам (260, 272).
Пример:

color_lower = (100, 120, 155)
color_upper = (110, 135, 170)
В этом случае скрипт будет кликать по координатам (260, 272), если цвет пикселя (261, 270) находится в диапазоне:

Красный канал: от 100 до 110
Зеленый канал: от 120 до 135
Синий канал: от 155 до 170
Важно:

Измените значения color_lower и color_upper на желаемые цвета в формате RGB.
Отрегулируйте координаты клика (260, 272) в соответствии с вашими потребностями.
Дополнительные советы:

Используйте инструмент захвата цвета (например, ColorPix) для определения цветов пикселей на экране.
Отрегулируйте диапазон цветов, чтобы добиться желаемой точности.
Можно использовать другие методы сравнения цветов, например, вычисление цветового расстояния (например, с помощью библиотеки colormath).
Похожие вопросы