Author Topic: Как искать ссылки и кнопки на вебстранице?  (Read 2282 times)

0 Members and 1 Guest are viewing this topic.

alizonjohn

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Всем привет! Допустим, задача: открыта страница ya.ru
Нужно кликнуть на кнопку "Войти в почту". Я делаю скриншот страницы, обрезаю все, кроме слов "Войти в почту" и ищу IF_PICTURE_IN. По найденным координатам навожу мышь.

Но: изменился шрифт страницы? - делай новый скриншот! Изменился масштаб? - делай новый скриншот и т.д.

Вопрос: есть ли другие способы искать ссылки/кнопки и нажимать их через clickermann?

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Чтобы функция KEYSTRING печатала текст правильно раскладки кликера и браузера должны совпадать "Ру"

Code: (clickermann) [Select]
KEYDOWN (#CTRL) // Ctrl+F
WAITMS (60)
KEYDOWN (#F)
WAITMS (60)
KEYUP (#F)
KEYUP (#CTRL)
WAITMS(50)
KEYPRESS(#DELETE) // удаляем предыдущий поиск
WAITMS(50)

KEYSTRING("Войти в почту") // Вводим текст для поиска
WAITMS(500)

GETSCREEN
IF_PIXEL_IN(0,0, $_xmax,$_ymax, 2350115) // Ищем цвет выделения
   LCLICK($_return1+2, $_return2+2) // кликаем по найденному
   WAITMS(100)
END_IF

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Интересно, а почему бы сразу не открывать нужную страницу 'mail.yandex.ru' ?
Вместо ya.ru. Ведь "войти в почту" там простая ссылка.
Или это просто пример такой неудачный?


alizonjohn

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Ок, спасибо, тут понятно. Допустим мы сделали поиск подпрограммой, что бы каждый раз не писать егою

Как при этом сделать условие: на странице есть 2 кнопки "кнопка1" и "кнопка2". Как сделать условие, что при появлении "кнопка1" мы нажимаем F5, а при появлении "кнопка2" мы нажимаем BACKSPACE?

Code: (clickermann) [Select]
SUB(poisk, $zapros)
   waitms(150)      // выделяю и данные
   KEYDOWN (#CTRL)  // Ctrl+F
   WAITMS (60)
   KEYDOWN (#F)
   WAITMS (60)
   KEYUP (#F)
   KEYUP (#CTRL)
   WAITMS(50)
   KEYPRESS(#DELETE) // удаляем предыдущий поиск
   WAITMS(50)
   
   KEYSTRING($zapros) // Вводим текст для поиска
   WAITMS(500)
   
   GETSCREEN
   IF_PIXEL_IN(0,0, $_xmax,$_ymax, 2350115) // Ищем цвет выделения
      LCLICK($_return1+2, $_return2+2) // кликаем по найденному
      WAITMS(100)
   END_IF
   WAITMS (200)
END_SUB

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Code: (clickermann) [Select]
SUB(poisk, $zapros, $set)
   waitms(150)      // выделяю и данные
   KEYDOWN (#CTRL)  // Ctrl+F
   WAITMS (60)
   KEYDOWN (#F)
   WAITMS (60)
   KEYUP (#F)
   KEYUP (#CTRL)
   WAITMS(50)
   KEYPRESS(#DELETE) // удаляем предыдущий поиск
   WAITMS(50)
   
   KEYSTRING($zapros) // Вводим текст для поиска
   WAITMS(500)
   
   GETSCREEN
   IF_PIXEL_IN(0,0, $_xmax,$_ymax, 2350115) // Ищем цвет выделения
      SWITCH($set)
      CASE(1)
         KEYPRESS(#F5)
      CASE(2)
         KEYPRESS(#BACKSPACE)
      END_SWITCH
      WAITMS(100)
   END_IF
   WAITMS (200)
END_SUB



poisk("кнопка1", 1)
poisk("кнопка2", 2)