Author Topic: Поиск одной фразы и клик на ней. Нужна Ваша помощь!  (Read 25741 times)

0 Members and 5 Guests are viewing this topic.

Laa911

  • Освоившийся
  • **
  • Posts: 61
    • View Profile
Задача была, что бы кнопочки програмка прокликала... за ночь  прокликала ;-)

А идея сделать что бы сам кликал, и сам кнопки находил в цикле ;-)

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Задача была, что бы кнопочки програмка прокликала... за ночь  прокликала ;-)

А идея сделать что бы сам кликал, и сам кнопки находил в цикле ;-)
Как бы по-другому вопрос-то задать - я уж хз... У тебя задача - кнопки прокликать, или - получить резальтат этого "прокликивания"? Так какой результат-то нужен?
Я не ду... Потому и не бу...

Laa911

  • Освоившийся
  • **
  • Posts: 61
    • View Profile
Да все верно, нашел кнопку клинкнул ( но так как кнопки разные) надо находить разные кнопки и кликать :-) в цикле

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Ладно - проехали...
Я не ду... Потому и не бу...

gogodanse

  • Освоившийся
  • **
  • Posts: 58
    • View Profile
А как найти текст в логе ?  :)

допустим нужно найти текст в логе ? тоесть условие if при котором если находится текст в логе нажимается мышка в определенное место

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
А как найти текст в логе ?  :)

допустим нужно найти текст в логе ? тоесть условие if при котором если находится текст в логе нажимается мышка в определенное место
Code: (clickermann) [Select]
$log = "Это лог, в котором мы проверяем существование - этой подстроки."

if (strpos($log, "этой подстроки"))
   LOGWRITE ("Подстрока найдена")
else
   LOGWRITE ("Подстрока не найдена")
END_IF

HALT

Clickermann -> Справка -> Язык сценариев -> Строки и строковые файлы -> strpos
« Last Edit: January 09, 2020, 11:58:28 PM by Hito »
Я не ду... Потому и не бу...

gogodanse

  • Освоившийся
  • **
  • Posts: 58
    • View Profile
А как найти текст в логе ?  :)

допустим нужно найти текст в логе ? тоесть условие if при котором если находится текст в логе нажимается мышка в определенное место
Code: (clickermann) [Select]
$log = "Это лог, в котором мы проверяем существование - этой подстроки."

if (strpos($log, "этой подстроки"))
   LOGWRITE ("Подстрока найдена")
else
   LOGWRITE ("Подстрока не найдена")
END_IF

HALT

Clickermann -> Справка -> Язык сценариев -> Строки и строковые файлы -> strpos

Как обычно спасаешь меня <3 лучший, надо бы обновить Справку, для профессионалов это конечно будет очевидно #LOG, а новички откуда знают об этой указке

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
надо бы обновить Справку, для профессионалов это конечно будет очевидно #LOG, а новички откуда знают об этой указке
Какой #LOG? Что обновлять? Какая указка?

Справку просто нужно прочитать, не обязательно запоминать. После прочтения будешь знать какие функции существуют. И если сейчас какая-то часть непонятна и не нужна, когда будет нужна, вспомнишь что подобное было.


Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
а новички откуда знают об этой указке

Для новичков вполне понятны слова - "Строки и строковые файлы". А уже в этом пункте можно полазить и посмотреть - что там вообще со строками можно мутить в кликере.
Я не ду... Потому и не бу...

gogodanse

  • Освоившийся
  • **
  • Posts: 58
    • View Profile
@hito посмотрите пожалуйста мой набросок

////pack1
$pack1 = "Заголовок окна"
$HTML = HTTPGET ("Сайт")

if (strpos($HTML, "Совпадение текста"))
   if ($pack1 > 0)          <- В этом месте если окно не найдено то скрипт должен выполнятся, если найдено то ничего не делать
      LOGWRITE ("Подстрока найдена")
      LCLICK(1337,393)
      KEYDOWN (#CTRL)
      WAITMS (50)
      KEYPRESS (#A)
      KEYUP (#CTRL)
      WAITMS(700)
      KEYSTRING($pack1)
      WAITMS(700)
      LCLICK(1484,390)
      WAITMS(700)
      LCLICK(1450,460)
      WAITMS(700)
      KEYSTRING("STR")
      LCLICK(1100,500)
   END_IF
END_IF
WAIT(60)

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
@hito посмотрите пожалуйста мой набросок

////pack1
$pack1 = "Заголовок окна"
$HTML = HTTPGET ("Сайт")

if (strpos($HTML, "Совпадение текста"))
   if ($pack1 > 0)           <- В этом месте если окно не найдено то скрипт должен выполнятся, если найдено то ничего не делать
      LOGWRITE ("Подстрока найдена") // Или все же когда найдено...
      LCLICK(1337,393)
      KEYDOWN (#CTRL)
      WAITMS (50)
      KEYPRESS (#A)
      KEYUP (#CTRL)
      WAITMS(700)
      KEYSTRING($pack1)
      WAITMS(700)
      LCLICK(1484,390)
      WAITMS(700)
      LCLICK(1450,460)
      WAITMS(700)
      KEYSTRING("STR")
      LCLICK(1100,500)
   END_IF
END_IF
WAIT(60)

Code: (clickermann) [Select]
$iskomaya_stroka = "Заголовок окна"
$HTML = HTTPGET ("Сайт")

if (strpos($HTML, $iskomaya_stroka)) <- И разберись... Тебе надо, чтоб скрипт выполнялся, когда НЕ найдено
   LOGWRITE ("Подстрока найдена")  // Или все же когда найдено...
   LCLICK(1337,393)
   KEYDOWN (#CTRL)
   WAITMS (50)
   KEYPRESS (#A)
   KEYUP (#CTRL)
   WAITMS(700)
   KEYSTRING($pack1)
   WAITMS(700)
   LCLICK(1484,390)
   WAITMS(700)
   LCLICK(1450,460)
   WAITMS(700)
   KEYSTRING("STR")
   LCLICK(1100,500)
END_IF

Только я не понял. Мы ищем окно, или подстроку в ответе от сервера? При чем тут - " если ОКНО не найдено"...?
« Last Edit: January 10, 2020, 06:59:56 PM by Hito »
Я не ду... Потому и не бу...

gogodanse

  • Освоившийся
  • **
  • Posts: 58
    • View Profile
@hito

Вот смотри его задача открывать окно, тоесть получаем код сайта если в коде найден подзаголовок он открывает окно

Но если подзаголовок найден и окно уже открыто то заново его открывать не надо

Поэтому я поставил два условия if

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
@hito

Вот смотри его задача открывать окно, тоесть получаем код сайта если в коде найден подзаголовок он открывает окно

Но если подзаголовок найден и окно уже открыто то заново его открывать не надо

Поэтому я поставил два условия if

Это вот это - "if ($pack1 > 0) ", поиск окна...?
Я не ду... Потому и не бу...

gogodanse

  • Освоившийся
  • **
  • Posts: 58
    • View Profile
@hite

Ну я думал да XD

Просто заголовок окна будет именно такой как в $pack1

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
@hite

Ну я думал да XD

Просто заголовок окна будет именно такой как в $pack1
Вот поиск окна
Code: (clickermann) [Select]
$hwnd=wndfind("Заголовок окна")
IF($hwnd)
   LOGWRITE ("Окно найдено")
else
   LOGWRITE ("Окно не найдено")
END_IF

Clickermann -> Справка -> Язык сценариев -> WinAPI, привязка к окну -> wndfind  >:(
« Last Edit: January 10, 2020, 07:14:17 PM by Hito »
Я не ду... Потому и не бу...