Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Kedrick

Pages: 1 ... 3 4 [5]
61
В ацтулз без рекурсии было никак, там нет работы с системным временем.

Еще одна маленькая просьба/вопрос не по этой теме.
Не могу разобраться как сделать работу подпрограммы до определенного времени.
WHILE($_time_h<12) работает до 12 часов, а если мне надо до 11:35 как сделать? Не найду в каком формате обозначать время.
$_time_t - не разобрался как с ним работать.

62
Предложения / Re: Конструкции break, continue
« on: November 18, 2014, 11:43:10 PM »
Присоединяюсь к просьбе.
Еще можно было бы добавить
exit - выход из подпрограммы (не путать с break) иногда удобно использовать как одно из условий цикла, переходить не просто в конец цикла, а сразу к следующей подпрограмме (мне их удобнее называть процедурами или функциями, но ладно, привыкну).

И команда pause - пауза скрипта, удобно для отладки

63
Спасибо.
Иногда бывает непонятные и непрогнозируемые подвисания, и загрузка страницы может длиться вечно, это исправляется обновлением окна, и я бы сделал как-то так:
Code: (clickermann) [Select]
SUB(ожидание)
   $check = 0
   $counter = 0
   WHILE($check = 0)
      IF($counter < 60)
         GETSCREEN
         IF_PICTURE_IN (0,0, $_xmax,$_ymax, "file.bmp", -1, 100)
            $check = 1
            WAITMS(100)
            GOTO(stop)
         ELSE
            INT($counter)
            WAIT(1)
         END_IF
      ELSE
         $counter = 0
         KEYPRESS(#F5)
         WAITMS(100)
      END_IF
   stop:
   END_CYC
END_SUB

Тут он каждые 60 секунд будет жать F5 пока страница таки не загрузится.
Еще при желании можно сделать чтобы это было не вечно, а вложить третий цикл, чтобы через 5 минут безуспешных попыток скрипт сделал паузу минут на 10 и потом продолжил долбиться, или вообще остановился, или еще один цикл чтобы подолбиться еще несколько раз по 5 минут.

Именно такие конструкции я и назвал монструозными :)
В хуманэмуляторе есть одна команда: browser->wait(сколько_сек_ждать, сколько_попыток_обновить)
Всего одна команда и вся вышеуказанная подпрограмма выполняется без мозголомства пользователя.

Тут хотелось-бы что-то подобное видеть в следующих версиях кликермана. Тогда он будет еще более незаменимым :)

PS Еще думаю если из подпрограммы можно вызывать ее саму, то можно слегка проще написать используя только условные циклы IF-ELSE. Попробую завтра.

64
Можно ли как-то красиво написать такую функцию, чтобы после клика по кнопке или ссылке в браузере, кликер ждал ровно столько времени, сколько грузится следующая страница?
Простой WAIT не всегда возможно адекватно использовать, по причине того, что интернет то летает и скрипт работает отлично, то начинает тупить и скрипт не зная этого тыкает в еще незагруженную кнопку или ссылку и ессно все сбивается.
Надоело нагромождать монструозные проверки и втыкать их после и перед каждым действием :(


65
Спасибо, одно из первейших правил программирования - "обнуляй переменные", я как последний лох протупил  ;D

66
Браузер мозилла, скриптую бота для браузерки, необходимо слегка отскроллить страницу вниз чтобы охватить поиском все нужные кнопки из списка. Причем не тупо до самого низа кнопкой 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 режим, вообще все перестает нажимать.

Теперь собственно вопрос, это моя локальная бага, или я что-то упустил? И есть ли более изящный способ скроллиться?

67
В хроме и яндексбраузере не работает, в лисе все видит, счаз поправлю скрипт и проверю. Сам полдня втыкался с нежеланием кликера искать картинки в окне, намутил второй скрипт, тупой но надежный )

68
Много лет назад изучил и по сей день активно пользуюсь скриптовалкой ACTool, не останавливало даже то, что разработчиком проект давно заброшен и на оф.форуме общение исключительно на аглицком. Неустранимые минусы - неработает в фоновых окнах, ищет только группу заранее описанных пикселей если задашь точные координаты и не компилирует исполняемый и легкопереносимый на другие компы файл.
Позже нашел вообще идеальную прогу для ботинга в браузерках - HumanEmulator - тут вообще чистый ПХП, русскоязычных манулов по языку по рунету валом, но разрабы люто жадные (стоимость продукта 200 баксов на скидке), форум поддержки доступен только официальным покупанам. Поэтому сам с некоторыми затыками и проблемами в работе так и не смог справиться и забил на него.

Постоянно искал замену ACTool, перебрал кучу скриптовалок, пробовал даже С++, но понял, что изучать серьезный язык ради написания для себя бота один раз в год-два в каждой новой пробуемой браузерке - нерациональное расточительство времени и русурсов мозга :) так-же и с той кучей попробованных скриптовалок.

И тут вдруг раз и наткнулся на кликермана :) в нем конечно есть пара мелких недочетов, или непоняток, но ведь проект развивается.
Побуду с вами, благо опыт и багаж знаний позволяет безболезненно и быстро перейти на этот язык.

69
Отличный вариант, хорошо что я спросил ) плюсую

70
Добавлю от себя

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

Я думаю что можно и не писать крутой интерпретатор как у взрослых, достаточно будет лайт версии кликермана, без интерфейса и возможности редактировать вшитый туда при "компиляции" скрипт, просто маленькое окошечко с кнопами старт стоп и т.п., как предложил предыдущий оратор.

Pages: 1 ... 3 4 [5]