Как гарантийно и без труда победить в конкурсе комментариев

В одном из пабликов ВК был конкурс репостов: Комментарий, продержавшийся 30 минут последним, побеждает. Призом в конкурсе был сладкий приз из местной кофейни.

Когда начался конкурс, я немного подумал и придумал, как можно автоматизировать мою победу в конкурсе.

Я использовал свой давно и горячолюбимый AutoHotkey script. Да, я знаю, что есть десяток более удобных и простых способов автоматизации, но уж сделал что сделал.

Для начала я написал бесконечный цикл, который раз в 25 минут сделает 10-секундное звуковое предупреждение, а затем откроет браузер с ссылкой на пост, определит, открылась ли страница, напишет туда "Хочу победить!" и закроет вкладку, после чего развернёт ранее открытое окно.

Как гарантийно и без труда победить в конкурсе комментариев Ahk, Autohotkey, Лайфхак, Программирование, Скрипт, Конкурс, Длиннопост, Бот

Далее построчно:

1-5 стандартные настройки скрипта

6-7 установил определение координат (мне так удобнее(см. документацию по imagesearch))

8 текст для вставки

12-21 десятисекундное предупреждение о начале работы кода (подразумевается, что нажатие клавиши F3 в это время прервёт цикл на эти 25 минут)

22 блокировка мыши, чтобы ничего случайно не испортить

26 получение ID активного окна, чтобы развернуть его назад после работы цикла

27 свернуть активное окно

29 открытие поста в нужном мне браузере

31-32 активация браузера

36 поиск поля для ввода комментария (сохранил скриншот поля для ввода в .bmp)

37 блок инструкций, если изображение (поле ввода) найдено на экране => страница открылась корректно

39 нажать на поле для ввода

41 вписать текст комментария

43 отправить

45 закрыть вкладку браузера (ALT+W)

49-51 звук об успешном написании комментария

52 разблокировка мыши

53 восстановление свёрнутого ранее окна

54 точка входа, если был нажат F3

58 блок инструкций при нажатии F3


По началу всё было замечательно, но со временем, другие начали замечать, что я пишу ровно один и тот же текст и ровно в одно и то же время, от чего начали задавать вопросы и устраивать "проверки". В итоге я немного модифицировал код, я сделал из переменной say массив фраз для вставки и время цикла сделал случайным в диапазоне от 15 до 25 минут. Плюс, я сделал определение, что мой пост последний ((15to25)*2 > 30min => победа), и если это так, то будет сделан скриншот страницы, затем открывается вкладка браузера с написанием сообщения самому себе (сижу с телефона) и я пишу себе уведомление о победе.

Как гарантийно и без труда победить в конкурсе комментариев Ahk, Autohotkey, Лайфхак, Программирование, Скрипт, Конкурс, Длиннопост, Бот

Построчно:

8 определение переменной массива

9 число индекса переменной (будет случайным для случайной фразы)

10-52 ввод значений в массив и подсчёт индекса массива (не уверен, что этот способ самый правильный, но придумал только так)

84 поиск моего аватара в месте последнего комментария

85-96 скриншот, открытие вкладки сообщения, написание сообщения себе же и закрытие вкладки

97-107 написание комментария

101 генерация случайного числа для выборки элемента массива (от 1 до "кол-во эл-тов")

117 рандом времени в диапазоне 15-25 минут (SleepTime указывается в милисекундах, в секунде 1000мс, поэтому я округлил рандом.


В итоге программа сама за меня писала разные комментарии в разном временном периоде. Так же, я иногда заходил на пост самостоятельно и от себя писал другие комментарии, отвечал на комментарии других людей в мой адрес, что в итоге убрало все подозрения. Меня проклинали, ругали, что если бы не я, то уже победили бы, и вот, на третий день розыгрыша мне удалось в районе 5 утра победить. Проснувшись, я увидел скриншот экрана и сообщение самому себе. Победа. :)

Я успешно забрал свой приз и по просьбе администратора прислал ему отчётное фото. Я нарочно сделал очень сонное лицо, будто не спал три дня.

Вы смотрите срез комментариев. Показать все
Автор поста оценил этот комментарий

Какой язык ты использовал?

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку