Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: nikolay8696 on February 06, 2019, 07:19:36 PM
-
Всем привет! Сделал скрипт из шаблонов, которые были в кликере. Задача этого скрипта ставить лайк или подписываться на канал, когда я его запускаю он работает через раз, иногда находит лайк, иногда пропускает и переходит к следующему сценарию. Не могу понять в чём проблема, помогите пожалуйста.
WAITMS(500)
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "zadanye.bmp", -1, 100)
MOVE($_return1, $_return2)
WAITMS(250)
LCLICK($_return1, $_return2)
WAITMS(250)
END_IF
WAIT(30)
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "like.bmp", -1, 100)
MOVE($_return1, $_return2)
WAITMS(250)
LCLICK($_return1, $_return2)
WAITMS(250)
END_IF
WAIT(2)
KEYDOWN (#CTRL)
WAITMS (50)
KEYPRESS (#W)
KEYUP (#CTRL)
-
Используй лог для отладки скрипта
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "like.bmp", -1, 100)
PRINT("Нашёл like.bmp")
MOVE($_return1, $_return2)
WAITMS(250)
LCLICK($_return1, $_return2)
WAITMS(250)
ELSE
PRINT("Не нашёл like.bmp")
END_IF
-
Что мне даст лог, если я и так знаю что он не находит.
-
Нужно циклы вставлять которые гарантированно будут ждать нужную картинку и реагировать на нее немедленно.
WAITMS(500)
$check = 0
WHILE($check = 0)
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "zadanye.bmp", -1, 100)
MOVE($_return1, $_return2)
WAITMS(250)
LCLICK($_return1, $_return2)
WAITMS(500)
$check = 1
ELSE
WAITMS(50)
END_IF
END_CYC
$check = 0
WHILE($check = 0)
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "like.bmp", -1, 100)
MOVE($_return1, $_return2)
WAITMS(250)
LCLICK($_return1, $_return2)
WAITMS(500)
$check = 1
ELSE
WAITMS(50)
END_IF
END_CYC
KEYDOWN (#CTRL)
WAITMS (50)
KEYPRESS (#W)
KEYUP (#CTRL)
WAIT(1)
Ну а если не находит то нужно использовать цветокоррекцию и процент совпадения.
-
Всем спасибо! всё получилось, я поставил совпадение 60% и теперь он всегда кликает на лайк не разу не пропустив.
$check = 0
WHILE($check = 0)
GETSCREEN
IF_PICTURE_IN (300,100, 1350,870, "like.bmp", -1, 60)
PRINT("Нашёл like.bmp")
MOVE($_return1+9, $_return2+6)
WAITMS(250)
LCLICK($_return1+9, $_return2+6)
WAITMS(500)
$check = 1
ELSE
PRINT("Не нашёл like.bmp")
WAITMS(50)
END_IF
END_CYC
-
Ребят ещё такой вопрос. Как сделать чтобы он 5 раз проверил, если картинка не найдена то он закрывает окно браузера. Бывает такое что видео не доступно или сбой соединения с сервером.
-
Не 5 раз а заданный промежуток времени!
Такой цикл будет искать картинку не более 20 секунд. Если за 20 сек не найдет выполнение продолжится после цикла.
$time = $_time_t + 20 // таймер на 20 секунд
WHILE($time > $_time_t)
GETSCREEN
IF_PICTURE_IN (300,100, 1350,870, "like.bmp", -1, 60)
PRINT("Нашёл like.bmp")
MOVE($_return1+9, $_return2+6)
WAITMS(250)
LCLICK($_return1+9, $_return2+6)
WAITMS(500)
$time = 0
ELSE
WAITMS(50)
END_IF
END_CYC
-
Ребят хотел спросить по поводу цветокоррекции, как применить эту функцию в моём коде? Дело в том, что если я зайду с другого браузера или использую этот скрипт на другом компе он откажется работать потому что он не видит картинки.
-
Ребят хотел спросить по поводу цветокоррекции, как применить эту функцию в моём коде? Дело в том, что если я зайду с другого браузера или использую этот скрипт на другом компе он откажется работать потому что он не видит картинки.
Вот таким скриптом делаешь снимок в цветокоррекции.
// Получение скриншота с цветокоррекцией (фильтр 6)
GETSCREEN
COLORMODE(6)
SCREENSHOTEX(0,0, $_xmax,$_ymax, "Image_", 0)
HALT
Можно попробовать значения 5-7
Из полученного скриншота вырезаешь то что тебе нужно.
В своем скрипте указываешь цветокоррекцию того же уровня.
GETSCREEN
COLORMODE(6)
-
всем привет.
у меня та же проблема. скрипт поиска картинки работал без цветокорекции на 64 железе. на днях комп сдох, пришлось перейти на 32 бит. сначала кликерман тормозил, поставил фрамеворк 4.5. начал работать. мой скрипт работает чужом компе, но не видит картинку. уже хотел тему создавать, но увидел вашу беседу. сделал с COLORMODE(6). скрипт увидел картинку
НО..
увидел всего раз. после захода в другой аккаунт, опять не видит картинку... :o
подскажите в чем проблема?
я уже привык к автоматизации ;), а еще не известно когда починят мой пк :(
заранее спасибо
-
Попробуй поставить меньше процент совпадения.
-
GETSCREEN
COLORMODE(5)
IF_PICTURE_IN (20,150, 600,1150, "makowkina.bmp", -1, 80)
LCLICK($_return1, $_return2)
WAITMS(100)
END_IF // поиск кнопки репоста
WAIT(3)
изменил колормоде на 5 и процент совпадения 80. заработало. но потом ждал облом, скриншот кнопки (логотип на белом фоне) срабатывал только на том сайте где был сделан снимок экрана, на салатовом фоне, хоть скриншот был обрезан. сделал кнопку на белом фоне, как у себя на компе, начало срабатывать на всех сайтах.
и еще одна проблема, иногда в зоне сканирования появляется другая кнопка, с тем же логотипом + еще нарисована сбоку монетка. как сделать чтобы она не нажималась?
Изучи игнорирование фона, в сложных случаях нужно использовать все доступные возможности.
спасибо, учту
-
Ребят подскажите в чём моя ошибка? Это сценарий для выполнения заданий на сайте vkmix. Кликер успешно выполняет задание, после того как он обратно переходит к пункту start он уже не видит картинку "Выполнить задание (sub)" и останавливается, хотя картинка есть, только на другом месте чуть правее.
// Переход на главную страницу и на задания instagram
GETSCREEN
COLORMODE(5)
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "main.bmp", -1, 80)
MOVE($_return1, $_return2)
WAITMS(250)
LCLICK($_return1, $_return2)
WAIT(3)
GETSCREEN
COLORMODE(5)
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "instagram.bmp", -1, 80)
MOVE($_return1, $_return2)
WAITMS(250)
LCLICK($_return1, $_return2)
WAIT(3)
END_IF
END_IF
// Нажимает начать выполнение задания
start:
WAITMS(500)
$check = 0
WHILE($check = 0)
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sub.bmp", -1, 80)
$check = 1
MOVE($_return1-14, $_return2+50)
WAITMS(250)
LCLICK($_return1-14, $_return2+50)
WAITMS(250)
ELSE
WAITMS(50)
GOTO(stop) // Если он не нашёл картинку выполнить задание
END_IF
END_CYC
WAIT(5)
$check = 0
WHILE($check = 0)
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "subinst.bmp", -1, 70)
$check = 1
MOVE($_return1, $_return2)
WAITMS(250)
LCLICK($_return1, $_return2)
WAIT(2)
KEYDOWN (#CTRL)
WAITMS (50)
KEYPRESS (#W)
KEYUP (#CTRL)
GOTO(start) // Выполнив задание переходит к start
ELSE
WAITMS(500)
KEYDOWN (#CTRL)
WAITMS (50)
KEYPRESS (#W)
KEYUP (#CTRL)
GOTO(stop)
END_IF
END_CYC
stop:
HALT
-
Спасибо за исправления, я только учусь :)