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

Основной раздел => Общие вопросы => Topic started by: r_edit on February 02, 2019, 12:42:11 PM

Title: Помогите с кодом, пожалуйста.
Post by: r_edit on February 02, 2019, 12:42:11 PM
Добрый день.

Помогите, пожалуйста, разобраться с кодом.
Задача: сохранить скриншот, если будет найден определенный цвет. Сейчас сохраняется пустой белый скриншот.
Алгоритм: кликер сначала идет в эксель, копирует ячейку, затем переходит на сайт, вставляет значение, и если после этого появляется определенный цвет, то необходимо сохранить определенную область экрана.
Code: [Select]
LCLICK(518,1026)
WAITMS(100)
LCLICK(1667,959)
WAITMS(100)
LCLICK(62,234)
WAITMS(100)
KEYDOWN(#CTRL)
WAITMS (10)
KEYPRESS(#C)
KEYUP(#CTRL)
WAITMS(100)
LCLICK(150,1025)
WAITMS(100)
LCLICK(1188,525)
WAITMS(100)
KEYDOWN(#CTRL)
WAITMS (10)
KEYPRESS(#A)
KEYUP(#CTRL)
WAITMS(100)
KEYDOWN(#CTRL)
WAITMS (10)
KEYPRESS(#V)
KEYUP(#CTRL)
WAITMS(100)
LCLICK(1313,531)
WAITMS(100)
if(PXL (1175, 579) = 8847615)
   screenshot(928,174, 1630,804)
end_if
WAITMS(100)
Title: Re: Помогите с кодом, пожалуйста.
Post by: James on February 02, 2019, 12:51:18 PM
Насколько я вижу, у вас перед if(PXL (1175, 579) = 8847615) нету никакого GETSCREEN(), наверное поэтому получается белый скриншот
Title: Re: Помогите с кодом, пожалуйста.
Post by: r_edit on February 02, 2019, 01:02:16 PM
Насколько я вижу, у вас перед if(PXL (1175, 579) = 8847615) нету никакого GETSCREEN(), наверное поэтому получается белый скриншот
Спасибо за ответ.
Добавил, но по-прежнему белый экран(

Code: (clik\ckermann) [Select]
GETSCREEN (928,174, 1630,804)
if(PXL (1175, 579) ! 8847615)
   screenshot(928,174, 1630,804)
end_if
WAITMS(100)
Title: Re: Помогите с кодом, пожалуйста.
Post by: Космич on February 02, 2019, 01:14:19 PM
Code: (clickermann) [Select]
SCREENSHOTEX (x1, y1, x2, y2, [pref], [format] )
// x1, y1, x2, y2 - четыре координаты, описывающие сохраняемую область буфера
// pref - необязательный параметр; префикс названия
// format - необязательный параметр; тип файла (сжатие): 0 - bmp; 1 - jpeg 
Title: Re: Помогите с кодом, пожалуйста.
Post by: r_edit on February 02, 2019, 01:22:45 PM
Code: (clickermann) [Select]
SCREENSHOTEX (x1, y1, x2, y2, [pref], [format] )
// x1, y1, x2, y2 - четыре координаты, описывающие сохраняемую область буфера
// pref - необязательный параметр; префикс названия
// format - необязательный параметр; тип файла (сжатие): 0 - bmp; 1 - jpeg 

Сделал, как вы написали, но без изменений.

Создается скриншот, причем с явно другим размером 254х93 (не тот, который указан в коде).
И не смотря на то, что в конце указал 1 (jpeg), сохраняет всё равно в bmp :(

Code: (clickermann) [Select]
GETSCREEN (928,174, 1630,804)       
if(PXL (1175, 579) = 8847615)
   screenshotex(928,174, 1630,804, pref, 1)
end_if
WAITMS(100)
Title: Re: Помогите с кодом, пожалуйста.
Post by: Oraven on February 02, 2019, 01:24:14 PM
Code: (clickermann) [Select]
GETSCREEN
IF(PXL(1175,579) = 8847615)
   SCREENSHOTEX(928,174, 1630,804, "Image_", 1) // сохраняем снимок в Jpg
END_IF
WAITMS(100)
Title: Re: Помогите с кодом, пожалуйста.
Post by: Oraven on February 02, 2019, 01:26:27 PM
Вопрос, у тебя случайно не включено масштабирование в винде?
Title: Re: Помогите с кодом, пожалуйста.
Post by: r_edit on February 02, 2019, 01:38:26 PM
Code: (clickermann) [Select]
GETSCREEN
IF(PXL(1175,579) = 8847615)
   SCREENSHOTEX(928,174, 1630,804, "Image_", 1) // сохраняем снимок в Jpg
END_IF
WAITMS(100)

Поменял на эти значения, сохраняет также в бмп, префикс не поменялся.
Мастабирования не было, на всякий случай проверил.
Прикладываю на всякий случай размер в подтверждение...
Title: Re: Помогите с кодом, пожалуйста.
Post by: Oraven on February 02, 2019, 01:40:48 PM
Проверь не запущено ли больше чем одна копия кликеров.
Также кнопка ПРИМЕНИТЬ там не просто так. Но в принципе при запуске должно применяться автоматически...
Title: Re: Помогите с кодом, пожалуйста.
Post by: r_edit on February 02, 2019, 01:46:08 PM
Проверь не запущено ли больше чем одна копия кликеров.
Также кнопка ПРИМЕНИТЬ там не просто так. Но в принципе при запуске должно применяться автоматически...

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

Code: (clickermann) [Select]
LCLICK(518,1026)
WAITMS(100)
LCLICK(1667,959)
WAITMS(100)
LCLICK(62,234)
WAITMS(100)
KEYDOWN(#CTRL)
WAITMS (10)
KEYPRESS(#C)
KEYUP(#CTRL)
WAITMS(100)
LCLICK(150,1025)
WAITMS(100)
LCLICK(1188,525)
WAITMS(100)
KEYDOWN(#CTRL)
WAITMS (10)
KEYPRESS(#A)
KEYUP(#CTRL)
WAITMS(100)
KEYDOWN(#CTRL)
WAITMS (10)
KEYPRESS(#V)
KEYUP(#CTRL)
WAITMS(100)
LCLICK(1313,531)
WAITMS(100)
GETSCREEN (928,174, 1630,804)
WAITMS(100)     
SCREENSHOTEX(928,174, 1630,804, "Image_", 1)
WAITMS(100)
Title: Re: Помогите с кодом, пожалуйста.
Post by: r_edit on February 02, 2019, 02:56:31 PM
Реально очень нужен код, который будет работать, готов задонатить.
Title: Re: Помогите с кодом, пожалуйста.
Post by: Oraven on February 02, 2019, 03:12:55 PM
Реально очень нужен код, который будет работать, готов задонатить.

В твоем коде нет ошибок. Задержка после GETSCREEN не нужна, функция отрабатывает и только потом выполнение идет дальше.
Проблема всецело в твоем компе, перезагрузи его что ли...
Title: Re: Помогите с кодом, пожалуйста.
Post by: James on February 02, 2019, 05:36:18 PM
Ну и последний рубеж в стиле перезагрузки еще запустить от имени администратора  :D
Можно проверить на виртуалке, если там все работает, то точно косяк в винде наверное
Title: Re: Помогите с кодом, пожалуйста.
Post by: r_edit on February 02, 2019, 06:05:38 PM
Реально очень нужен код, который будет работать, готов задонатить.

В твоем коде нет ошибок. Задержка после GETSCREEN не нужна, функция отрабатывает и только потом выполнение идет дальше.
Проблема всецело в твоем компе, перезагрузи его что ли...

Мда... мистика, перезагрузил, все ок) кроме bmp, все равно в этом формате сохраняет, но в моем случае не принципиально

Спасибо всем, кто откликнулся!