Author Topic: Нахождение строки  (Read 1964 times)

0 Members and 1 Guest are viewing this topic.

Reach

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Нахождение строки
« on: June 03, 2015, 12:11:47 PM »
Привет, помогите написать скрипт для поиска нужной строки.
Мне нужно чтобы бот находил строку которая начинается на <a href=      (она будет выделятся оранжевым цветом,бот должен анализировать строки где <a href=выделяется только оранжевым) , после того как он нашел эту строчку, он будет работать только в ней пока не закончит анализ строки.
В этой строке бот должен найти ссылку синего цвета и в этой же строке он должен найти  "_blank"
Если бот нашел строку с <a href= , в этой же строке он нашел синюю ссылку и нашел  "_blank", то
он должен кликнуть на ту самую синюю ссылку ( ссылка может быть разной www://mail.ru, http://gdechto.com, но ее цвет всегда синий и только синий).
Но если бот не выполнил одно из условий, например не нашел "_blank" то он должен кликнуть на окошко справа и заново начать поиск.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Нахождение строки
« Reply #1 on: June 03, 2015, 12:40:58 PM »
Если искать графически, то "_blank" найти очень трудно если не отключить сглаживание шрифтов.

То же самое может проявиться и при поиске "синей" ссылки, особенно если она короткая.

Code: (clickermann) [Select]
MOVE($_xmax,200)
WAITMS(50)
GETSCREEN
IF_PIXEL_IN(0,0,$_xmax,$_ymax, 3315455)
   $href_X = $_return1
   $href_Y = $_return2
   IF((PXL($href_X+10,$href_Y) = 3315455) & (PXL($href_X+20,$href_Y) = 3315455))
      GETSCREEN
      IF_PICTURE_IN($href_X+60,$href_Y-2,$_xmax,$href_Y+15, "blank.bmp",-1,100)
         IF_PIXEL_IN($href_X+60,$href_Y,$href_X+180,$href_Y+15, 16744319)
            LCLICK($_return1,$_return2)
            WAITMS(300)
            // кликнули. Делаем что нужно
         END_IF
      END_IF
   END_IF
ELSE
   WAITMS(50)
END_IF


Reach

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Re: Нахождение строки
« Reply #2 on: June 03, 2015, 04:15:51 PM »
Спасибо, попробую потом отпишусь :)

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Нахождение строки
« Reply #3 on: June 03, 2015, 04:28:04 PM »
А в чистом виде пробовать безсмысленно. "blank.bmp" не найдёт. Судя по скрину, сомневаюсь даже что с COLORMODE 7 +% будет стабильно.
Отключить сглаживание никак?


Reach

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Re: Нахождение строки
« Reply #4 on: June 03, 2015, 04:53:09 PM »
Да вот попробовал отключил, что дальше делать?

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Нахождение строки
« Reply #5 on: June 03, 2015, 05:18:18 PM »
Вырезать такую же заготовку как в примере, только со скрина без сглаживания.
Ну и всё.
В скрипте устроить поиск следующего.


Reach

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Re: Нахождение строки
« Reply #6 on: June 03, 2015, 06:36:26 PM »
Спасибо, работает)