Author Topic: Помогите сделать сценарий (поиск цвета и клик по нему)  (Read 15411 times)

0 Members and 2 Guests are viewing this topic.

ilyache

  • Зашел в гости
  • *
  • Posts: 3
    • View Profile
Помогите разобраться как правильно сделать сценарий:

1. Сканирование области экрана.
2. Поиск трёх конкретных цвета пикселей и нажатие по нему.
3. Поиск и нажатие на красный цвет в конкретной области экрана.
4. Задержка.
5. Нажатие по координатам.
6. Повтор 2 пункта.
7. Если нет нужного цвета пикселей, то остановиться.

Спасибо!

NStra

  • Освоившийся
  • **
  • Posts: 45
  • Подпись под аватаром.
    • View Profile
Quote
2. Поиск трёх конкретных цвета пикселей и нажатие по нему.
Нажатие по последнему найденному пикселю, или жать по нему если найдены все?
Быть может, нужно жать по каждому найденному, или если найдены все?
Quote
3. Поиск и нажатие на красный цвет в конкретной области экрана.
Код пикселя пожалуйста, и 3-х предыдущих тоже.
Красный появляется после клика?
Какие координаты у каждого пикселя?
Могут ли быть на экране похожие пиксели, но не нужные?
Quote
5. Нажатие по координатам.
По каким?
Quote
7. Если нет нужного цвета пикселей, то остановиться.
Другими словами если тех трех пикселей нет, то не нажимать а остановиться?
А если во 2-м пункте их не будет изначально, нужно ли останавливаться, или искать красный цвет?
« Last Edit: April 03, 2015, 01:50:51 PM by NStra »
Тут должна быть подпись...

ilyache

  • Зашел в гости
  • *
  • Posts: 3
    • View Profile
Ну вроде худо-бедно разобрался:

Code: (clickermann) [Select]
//Розовые плашки
GETSCREEN
  // colormode(5,255,187,913,1030)
IF_PIXEL_IN(326,137,980,1122, $_xmax,$_ymax, 10653695)
   LCLICK($_return1+5, $_return2+5)
   WAITMS(1000)
 
//red round
   GETSCREEN
IF_PIXEL_IN(326,137,980,1122, $_xmax,$_ymax, 255)
   LCLICK($_return1+5, $_return2+5)
   WAITMS(1000)
   
   //кнопка close
   GETSCREEN
   colormode(5,487,109,538,148)
IF_PIXEL_IN(487,109,538,148, $_xmax,$_ymax, 1154551)
LCLICK($_return1+5, $_return2+5)
   WAITMS(1000)

//Зеленые плашки
GETSCREEN
// colormode(5,255,187,913,1030)
IF_PIXEL_IN(326,137,980,1122, $_xmax,$_ymax, 44544)
   LCLICK($_return1+5, $_return2+5)
   WAITMS(1000)
   
//red round
GETSCREEN
IF_PIXEL_IN(326,137,980,1122, $_xmax,$_ymax, 255)
   LCLICK($_return1+5, $_return2+5)
   WAITMS(1000)
   
   //кнопка close
   GETSCREEN
 //  colormode(5,487,109,538,148)
IF_PIXEL_IN(487,109,538,148, $_xmax,$_ymax, 1154551)
LCLICK($_return1, $_return2)
   WAITMS(1000)
   
    //Оранжевые плашки
GETSCREEN
// colormode(7,255,187,913,1030)
IF_PIXEL_IN(326,137,980,1122, $_xmax,$_ymax, 1280734)
   LCLICK($_return1, $_return2)
   WAITMS(1000)
   
//red round
GETSCREEN
IF_PIXEL_IN(326,137,980,1122, $_xmax,$_ymax, 255)
   LCLICK($_return1, $_return2)
   WAITMS(1000)
   
   //кнопка close
   GETSCREEN
//   colormode(5,487,109,538,148)
IF_PIXEL_IN(487,109,538,148, $_xmax,$_ymax, 1154551)
LCLICK($_return1, $_return2)
   WAITMS(1000)
« Last Edit: April 06, 2015, 09:27:21 PM by Oraven »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Ну вроде худо-бедно разобрался:
В чем ты там разобрался?

Верный скрипт:
Code: (clickermann) [Select]
//Розовые плашки
GETSCREEN
IF_PIXEL_IN(326,137,980,1122, 10653695)
   LCLICK($_return1+5, $_return2+5)
   WAITMS(1000)
END_IF

//red round
GETSCREEN
IF_PIXEL_IN(326,137,980,1122, 255)
   LCLICK($_return1+5, $_return2+5)
   WAITMS(1000)
END_IF

//кнопка close
GETSCREEN
colormode(5,487,109,538,148)
IF_PIXEL_IN(487,109,538,148, 1154551)
   LCLICK($_return1+5, $_return2+5)
   WAITMS(1000)
END_IF

//Зеленые плашки
GETSCREEN
//    colormode(5,255,187,913,1030)
IF_PIXEL_IN(326,137,980,1122, 44544)
   LCLICK($_return1+5, $_return2+5)
   WAITMS(1000)
END_IF

//red round
GETSCREEN
IF_PIXEL_IN(326,137,980,1122, 255)
   LCLICK($_return1+5, $_return2+5)
   WAITMS(1000)
END_IF

//кнопка close
GETSCREEN
//  colormode(5,487,109,538,148)
IF_PIXEL_IN(487,109,538,148, 1154551)
   LCLICK($_return1, $_return2)
   WAITMS(1000)
END_IF

//Оранжевые плашки
GETSCREEN
//    colormode(7,255,187,913,1030)
IF_PIXEL_IN(326,137,980,1122, 1280734)
   LCLICK($_return1, $_return2)
   WAITMS(1000)
END_IF

//red round
GETSCREEN
IF_PIXEL_IN(326,137,980,1122, 255)
   LCLICK($_return1, $_return2)
   WAITMS(1000)
END_IF

//кнопка close
GETSCREEN
//   colormode(5,487,109,538,148)
IF_PIXEL_IN(487,109,538,148, 1154551)
   LCLICK($_return1, $_return2)
   WAITMS(1000)
END_IF

ilyache

  • Зашел в гости
  • *
  • Posts: 3
    • View Profile
Спасибо! Значит не особо разобрался.

Тут есть еще вопрос:
Как сделать нажатие в определенную область экрана при появлении определенного текста в браузере ну не обязательно в браузере.
Догадываюсь, что можно отсканировать экран в определенном месте и сделать скриншот и как-то сверить с тем что есть в файле.