Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: Kedrick on November 16, 2014, 11:32:36 PM

Title: Скроллить страницу в привязанном окне браузера
Post by: Kedrick on November 16, 2014, 11:32:36 PM
Браузер мозилла, скриптую бота для браузерки, необходимо слегка отскроллить страницу вниз чтобы охватить поиском все нужные кнопки из списка. Причем не тупо до самого низа кнопкой END, и не пробелом или PgDown, а буквально пару раз крутнуть колесо мыши :)
Но поскольку самые очевидные варианты в привязке не работают, я сделал так:
Code: (clickermann) [Select]
while(1 = 1) // бесконечный цикл
   // тут вырезано начало скрипта и открытие большой страницы которая не влезает по высоте полностью в окно
   // дальше надо скрольнуть чуть вниз
      FOR($a, $a < 10)
         LCLICK(1200,980) // кликать на стрелку вниз в правом нижнем углу
         WAITMS(50)
      END_CYC
   // тут находим необходимую кнопку и тыкаем по ней
   // страница перезагружается и скрипт завершается
END_CYC

Потом сделал так:
Code: (clickermann) [Select]
FOR($a, $a < 10)
      KEYPRESS(#DOWN)
      WAITMS(50)
END_CYC

Оба варианта работают, но только в первый раз при запуске. Первый круг скрипт проходит, а на втором уже не скроллит ничего, ни одним из вариантов. Все остальные нажатия и поиски картинок отрабатывает.
Пробовал ps/2 режим, вообще все перестает нажимать.

Теперь собственно вопрос, это моя локальная бага, или я что-то упустил? И есть ли более изящный способ скроллиться?
Title: Re: Скроллить страницу в привязанном окне браузера
Post by: Kedrick on November 17, 2014, 12:30:58 AM
Спасибо, одно из первейших правил программирования - "обнуляй переменные", я как последний лох протупил  ;D
Title: Re: Скроллить страницу в привязанном окне браузера
Post by: Oraven on November 17, 2014, 07:19:59 AM
Для 4.11 теперь надо писать так.
Code: (clickermann) [Select]
FOR($a=0, $a < 10)
   KEYPRESS(#DOWN)
   WAITMS(50)
END_CYC

Но есть случаи когда обнулять не нужно, поэтому так сделано для большей гибкости.