Гайд как пользоваться скриптом (v2.3) для Жабабота
Привет! Это пошаговая инструкция как настроить и затем пользоваться моим скриптом, который позволяет автоматизировать некоторые рутинные дела в Жабаботе. Перед тем как начнем, вот некоторая рекомендация к прочтению:
Весь текст представленный вот в таком формате "цитирования" вы можете смело игнорировать, так как там лишь будут мои вставки, которые я посчитал достаточно интересными (хотя бы я так надеюсь), чтобы включить в этот текст, но от непрочтения этих вставок настройка скрипта нисколько не поменяется, чем если бы вы всё-таки решились прочитать их.
И предостережение. Большинство данной инструкции написано на пользователей Виндовса, поэтому если у вас продукция Эппла или (не дай бог) Линукса (хотя во втором случае вы так и так сами разберетесь), вам придется "конвертировать" команды которые прописываются в командную строку в синтакс командной строки вашей ОС.
Что понадобится.
Компьютер (желательно на Винде, но принципиально не важно), подключение к Интернету, небольшой опыт работы с компьютером (совсем маленький, клянусь), и, естественно, аккаунт в Телеграме и жаба в Жабаботе.
Шаг первый. Скачивание и установка Питона и библиотек.
Данный скрипт написан на Python, при помощи библиотеки Pyrogram. Не буду сильно утруждаться, рассказывая что Пирограм - современный, элегантный фреймворк для работы с основным АПИ Телеграма, а лучше приступим к установке.
Пы.Сы.: установка всего софта на вашем компьютере не должна занять очень много, а Питон на вашем компьютере наверняка уже есть, как ваша попытка начать учить язык программирования к примеру :)
Шаг первый, пункт первый. Установка Питона.
Переходим на оффициальный сайт для скачивания Питона: https://www.python.org/downloads/. У меня он выглядит примерно так:
И нажимаем на желтую кнопку Download Python 3.x.x. На момент написания этого текста, актуальная версия Питона - 3.11.4.
Кстати. Если кто-то обратил внимание, у меня кнопка скачивания по умолчанию скачивает Питон для Линукса - так как у меня ОС Линукс. Для вас же (хотя бы так должно быть по умолчанию) та же кнопка должна скачать версию Питона для Виндовс или другой ОС, которой вы пользуетесь (вебсайт самостоятельно определяет, на какой ОС вы сидите, и подбирает вам нужную версию Питона).
Запускаем установочный файл. Впринципе дальнейший процесс я мог бы и не описывать (специфики установки не должны повлиять на вашу конечную возможность запускать скрипт на своем компьютере, да и в интернете море статей по тому, как установить Питон). Тем не менее, на всякий случай, опишу.
У вас при запуске должно появиться следующее окошко: (спасибо владельцам сайта python-scripts.com и конкретно статье https://python-scripts.com/install-python за скриншот установки на Виндовсе)
Если по какой-либо причине у вас не получится установить Питон, смело обращайтесь к вышеуказанной статье. Я тут сильно сожму содержимое статьи чтобы мы быстро установили Питон и продолжили.
Важное уточнение (которое также делают авторы статьи на python-scripts.com) - не забудьте поставить галочку на Add Python 3.X to Path
.
Небольшое моё обьяснение того, что это значит. Грубо говоря, если вы поставите галочку в этом пункте, название Питона будет добавлено в PATH - специальный реестр названий, которые потом можно будет прописывать напрямую в командной строке для исполнения (а не указывая каждый раз локацию установки, к примеру, Питона). Вот простой пример:
С PATH:
> python hello.py
запускаем файл hello.py находящийся в данной директории
Без PATH:
> C:\Users\$USERNAME$\AppData\...\Python3X.py hello.py
приходится указывать полный путь к главному файлу Питона чтобы исполнить питоновские файлы в командной строке
После проставления соответствующей галочки, смело жмите на Install now, потому что дальнейшая специфика установки для запуска скрипта ни к чему. Готово! У вас на компьютере теперь должен быть установлен рабочий Питон.
Шаг первый, пункт второй. Установка необходимых библиотек Питона.
Вам понадобятся две библиотеки для запуска скрипта: Pyrogram (которого мы до этого уже коснулись, в общем основная библиотека для управления Телеграмом, отправки сообщений и так далее), и Argument Parser (коротко, argparser, дабы было удобно вводить вводные (извините за тавтологию) данные для скрипта через командную строку, о них чуть позже).
Устанавливать эти библиотеки мы будем через командную строку, а именно, через такой установщик библиотек как pip.
Который (установщик), по сути, также является библиотекой Питона, но встроенной в установщик Питона. То есть когда мы устанавливали Питон ранее, вам автоматически должна была установиться и библиотека pip.
Самый быстрый способ открыть командную строку: нажать клавишу Win (или комбинацию Win+S если не сработает), откроется Панель Пуск. Начните писать cmd, и откройте появившуюся в поиске командную строку. Можете на всякий случай запустить её с правами администратора, но это ни в коем случае не должно поспособствовать или помешать работе скрипта.
При открытии панели Пуск автоматически вызывается поиск софта на вашем компьютере, поэтому вы можете сразу начать печатать, а если такой поиск не открылся, попробуйте Win + S как я уже сказал.
(скрин выше взят из статьи https://support.kaspersky.ru/common/windows/14637#block0)
У меня к сожалению Линукс, поэтому приходится много скринов брать из Интернета. К примеру командная строка в Линуксе, это настолько часто используемое место (как Мой Компьютер в Винде), что она (командная строка) расположена сразу на панели задач, и вызывается комбинацией клавиш Ctrl+`
Проверим сначала, успешна ли была наша установка Питона. В командной строке пропишите одно слово:
python
и нажмите энтер. У вас должен запуститься интерпретатор Питон - значит у вас установлен Питон, поздравляю!
Вы сразу поймете, запустился ли интерпретатор, потому что интерпретатор и командная строка отличаются внешне. Да и потому что если Питон у вас, по какой-то причине, не установился или установился неправильно, командная строка при попытке запуска (Питона) вам выдаст примерно следующую ошибку:
'python' is not recognized as an internal or external command,
operable program or batch file.
Выйдите из интерпретатора (полагаю что всё-таки у вас удачно получилось установить Питон и вы запустили интерпретатор), прописав в нём exit():
>> exit()
Стрелочки чисто для иллюстрации, как выглядит интерпретатор, их вводить не надо. Теперь собственно приступим к установке необходимых библиотек.
В командной строке пропишите следующие строчки (а лучше скопируйте и вставьте, причем вставить что-то в командную строку комбинацией Ctrl + V из буфера обмена скорее всего не получится - поэтому вставляйте нажатием правой кнопки мыши на курсоре в командной строке, и нажатием "Вставить" из появившегося контекстного меню).
Почему, в большинстве командных строк, не работают обычные комбинации клавиш как Ctrl + C и Ctrl + V? Всё дело в том, что они в командной строке служат для других целей, к примеру вы можете насильно прервать какой-либо процесс который исполняется, если во время исполнения прожмете комбинацию Ctrl + C. Или же может вы пытались вставить в командную строку что-то комбинацией Ctrl + V, но ничего не произошло, и после этой неудачной попытки вы вставили туда что-то уже через правую кнопку мыши, и вдруг ваш вставленный текст перестал выглядеть так как должен? Это произошло потому, что когда вы прожали Ctrl + V с активным курсором в командной строке, вы не бездействовали, а вставили специальный набор символов, обозначающих эту комбинацию клавиш в командной строке. Ваша потом вставленная строка смешалась с этой комбинацией, и в результате получилось что-то довольно атрофированное. Если так всё и было, просто удалите ваше отродие, и вставьте уже то что вы хотели вставить методом "командной строки" (мышкой).
Так вот, в командной строке пропишите следующие строчки:
pip install pyrogram
pip install argparse
Придется подождать немного после запуска каждой строчки, так как будет скачиваться и устанавливаться соответствующая библиотека из Интернета.
Почти готово! Технически, вы уже установили весь софт, который необходим для запуска скрипта, но теперь нужно будет скачать сам скрипт из (моего) репозитория Гитхаб.
Шаг первый, пункт третий. Скачивание скрипта.
Кстати говоря, к этому моменту командная строка наверняка изрядно заполнилась ненужным нам текстом (установки библиотек, к примеру). Чтобы почистить командную строку и вернуть её в состояние первого запуска, пропишите следующую команду:
cls
Не бойтесь её прописывать и запускать всякий раз когда вам кажется, что командная строка стала слишком загроможденной ненужным текстом - наоборот, прописывайте её с удовольствием и чувствуйте себя программистом!
Теперь, с чистой душой (и чистой командной строкой, если вы решили прочесть предыдущую вставку, кстати не закрывайте пока её) скачайте мой репозиторий по следующей ссылке (нажатие по ссылке должно автоматически скачать нужный репозиторий zip файлом):
https://github.com/AsmanHud/autotoadbot/archive/refs/heads/main.zip
Если вы вдруг хотите сами вручную скачать репозиторий, или прежде посмотреть на внутренности моего скрипта, то вот вам ссылка на него:
https://github.com/AsmanHud/autotoadbot
Войдите в zip файл как если бы вы входили в папку (у вас в 99% случаев должен уже быть установлен софт, чтобы работать с zip файлами, если нет, то скачайте по этой ссылке: https://www.winzip.com/en/download/winzip/).
Надеюсь у вас получилось войти в зип файл, так как это стандартный функционал как WinZip ссылку к которому я предоставил, так и почти любого другого софта для работы с зип файлами. Если же при попытке открыть этот зип файл вам предлагается тут же разархивировать (extract) его, согласитесь, разархивируйте куда-нибудь, например на рабочий стол, и дальше инструкции похожие.
Там будет папка с названием autotoadbot-main (название репозитория). В этой папке, нам понадобится лишь один (из двух) файлов - frog.py. Вытащите (разархивируйте, переместите, скопируйте - неважно) этот файл куда-нибудь, к примеру к себе на рабочий стол, чтобы у вас к нему был доступ.
Итак, теперь скачанный скрипт надо установить, а точнее просто переместить в стандартную директорию, где по умолчанию находится командная строка, чтобы в будущем было легко запускать скрипт.
Шаг второй. 'Установка' скрипта.
Установка в кавычках, потому что скрипт это по сути файл с питоновским расширением (.py), который мы будем запускать через командную строку, поэтому устанавливать тут особо нечего. Я имел ввиду установку в плане того, что мы переместим файл в нужную директорию, чтобы потом было удобно запускать скрипт, а не установку в привычном нашем понимании (например Питон мы реально установили - через установщик)
В командной строке (которую, я надеюсь, вы так и не закрыли, а если и закрыли, её несложно опять запустить) пропишите следующую команду:
echo %cd%
На следующей строчке вам должна отобразиться ваша текущая директория (местоположение в файловой системе). Стандартая директория, в которой изначально находится командная строка (а мы находимся как раз в ней, так как не "двигались" никуда), на Винде должна быть примерно такой:
C:\Users\UserName
Где UserName (у вас там скорее всего будет другой вариант) ваше второе имя на вашем компьютере (юзернейм, если позволите англицизм). Скопируйте данную линию (директорию по сути), причем у вас опять же скорее всего не получится скопировать эту линию комбинацией Ctrl + C, поэтому выделите эту линию, нажмите на выделенное правой кнопкой мыши, и в контекстном меню выберите "Скопировать". Дальше откройте Проводник (Мой Компьютер).
В проводнике (моем компьютере), кликните по строке директории (указана выше), и удалив указанный там текст (директорию), вставьте свою (которую вы скопировали в командной строке). Поздравляю! Вы сейчас находитесь (должны находится по крайней мере) в стандартной директории, в которой по умолчанию находится Командная строка.
Если же у вас не получилось по какой-то причине проделать операцию, описанную выше, то попробуйте вручную перейти в эту директорию. (полагая, что стандартная директория вашей командной строки C -> users -> UserName):
В моем компьютере перейдите в диск С, затем найдите папку Users и перейдите туда, и там перейдите в папку со своим юзернеймом (который был наверняка указан когда вы прописывали echo %cd%, а если нет, то посмотрите в интернете как определить свой юзернейм).
Вставьте сюда (не в какую-то новую или существующую папку, а конкретно в ту директорию, в которую вы перешли) файл frog.py.
Если вы (ну а вдруг) не хотите засорять вашу корневую директорию (хотя осмелюсь предположить, что вы сюда захотите только чтобы пойти дальше в AppData, или это вовсе ваше первое посещение этой директории), то можете создать какую-нибудь папку, закинуть туда frog.py, и впредь работать со скриптом в этой папке. Тогда вам придется немного модифицировать дальшейшие инструкции по запуску скрипта, либо прописывая при каждом новом запуске командной строки:
cd FolderName
чтобы менять директорию, в которой находится командная строка, на созданную вами папку, либо же поменяв по всех запусках скрипта frog.py на FolderName\frog.py следующим образом:
python FolderName\frog.py дальшейшие аргументы
Конец необязательной вставки.
Всё! Если вы дошли до этого момента, то подготовительные моменты окончены, и теперь вы будете проделывать примерно одинаковую (уже достаточно легкую) операцию каждый раз, когда будете в очередной раз запускать скрипт.
Шаг третий. Первый запуск скрипта.
Буду честен, я соврал, когда заявил, что это конец всех подготовительных моментов. Да, мы скачали и установили (и 'установили') всё что надо, но теперь нам надо в первый раз запустить скрипт. А для этого нужно будет войти в свою среду разработчика (Телеграма), достать оттуда кое-какие данные, вставить их в определенном месте в скрипте, ну и думаю на этом всё. Несложно, верно? Ну давайте, я в вас верю, если вы дошли до этого уж момента, то вы прирожденный программист!
Шаг третий, пункт первый. Достать api_id и api_hash.
Мне нравится обьяснение концепций api_id и api_hash от Чата ГПТ:
В Телеграме, `api_id` и `api_hash` - это как пара ключей, которые позволяют приложению (например, клиенту Телеграма на вашем устройстве или какой-то другой программе) безопасно идентифицироваться и взаимодействовать с серверами Телеграма.
Давайте представим, что вы хотите посетить определенное место, например, выставку. Чтобы попасть туда, вам нужен билет (это `api_id`) и специальный код доступа, как штрих-код указанный на билете (это `api_hash`). Эти два элемента вместе позволяют вам получить доступ и использовать функции Телеграма через свое приложение или программу.
Важно сохранять `api_id` и `api_hash` в секрете, потому что они подобны вашим учетным данным. Никому не следует знать эти значения, кроме вас и программ, которые вы разрабатываете или используете для доступа к Телеграму.
Перейдите по ссылке https://my.telegram.org/auth?to=apps, и введите свой свой номер телефона. Вы получите код подтверждения в Телеграм, скопируйте его (обратите внимание на тире в начале и/или конце, если они будут - это часть кода). Примерно так будет выглядеть интерфейс, когда вы войдете:
Нажимайте на API development tools (возможно у вас автоматически оно открылось), вот так будет примерно там всё выглядеть:
Если вы видите примерно тот же самый интерфейс, что на картинке, значит вы на верном пути. Не обращайте внимания на все стрелки - просто введите любое название в App title, Short name, платформу можете выбрать Desktop (она выбирается лишь в информационных целях) и всё - остальное заполнять не обязательно. Жмите Create application.
Если всё пройдет хорошо, то вы перейдете на страничку, похожую ниже (цитата и скрины взяты со статьи http://pythonbot.tilda.ws/about_api):
Отлично! Откройте какой-нибудь текстовый файл (или просто не закрывайте эту страничку в браузере), в общем пусть эти api_id и api_hash будут у вас под рукой когда понадобится их копировать.
Ни в коем случае никому не показывайте свои данные, указанные на данной веб страничке! Тот, кто ими владеет, может при желании сделать всё что ему вздумается с вашим аккаунтом в Телеграм.
Шаг третий, пункт второй. Небольшое редактирование скрипта.
Давайте вернемся обратно в директорию, куда вы вставили frog.py
Если вы закрыли уже Проводник, можете обратиться к предыдущим шагам, чтобы туда вернуться.
Откройте frog.py как текстовый файл (нажмите на файл правой кнопкой мыши, выберите Открыть с помощью... в контекстном меню, и выберите вариант открытия с помощью блокнота или любого другого текстового редактора).
Когда вы откроете скрипт как текстовый файл, вы увидите примерно такую картину:
Заметьте, как у моего текстового редактора немного подкрашен текст, а у вас он может черно-белый, если вы открыли скрипт настоящим Виндовсоуским блокнотом, это не имеет никакого значения. У меня ведь Линукс, и вот такой вот тут встроенный текстовый редактор, Линуксовский Блокнот.
Вам нужно будет поменять некоторые значения в начале самом кода (остальное трогать не надо). Во-первых, нужно поменять значение, которому равняется DATA_IS_HARD_CODED на True:
DATA_IS_HARD_CODED = True
Потом, можете поменять в таком месте:
"account1": {
account1 на что-то более запоминающееся или удобное вам. Я поменяю на tutsogly к примеру, и получу:
"tutsogly": {
Затем, там где идут такие значения:
"api_id": "12345678", "api_hash": "1234567890abcdef1234567890abcdef", "is_premium": False,
Поменяйте значения api_id, api_hash на те значения, которые вы получили на той страничке с первого пункта третьего шага. is_premium поменяйте с False на True, если у вас премиумная жаба. И поменяйте chat_id:
"chat_id": -1001234567890,
Этот гайд я пишу изначально для своих друзей, поэтому здесь не будет чайниковой инструкции о том как достать этот chat_id (поищите в интернете), но вот вам короткий инструктаж (самый легкий метод):
1) Войдите в web telegram (в телеграм с браузера)
2) Перейдите в чат (группу) с жабаботом, в которой вы хотите автоматизировать отправку сообщений
3) Ссылка на этот чат (группу) будет выглядеть примерно так:
https://web.telegram.org/a/#-1234567890
4) Возьмите идентификатор, указанный в ссылке (номерок), добавьте сразу после минуса (тире) 100, и получите ваш chat_id. То есть примерно так:
chat_id = -100вашчатид
Заметьте - это обязательно должно быть отрицательное число, а не строка!
Вот и всё впринципе! Сохраните ваши изменения сочетанием Ctrl + S, закрывайте блокнок, и запустим же наш скрипт наконец-таки!
Шаг третий, пункт третий. Первый запуск скрипта.
Чтобы запустить скрипт (и впредь запускать его), вам нужно будет открыть командную строку (если закрыли), и прописать следующую команду:
python frog.py tutsogly
tutsogly конечно замените на свой юзернейм (который вы придумали и поставили заместо account1, ну или account1 если вы решили это не менять).
В самый первый запуск, скрипту понадобится сгенерировать файл сессии (frogbot_tutsogly.session), чтобы потом запускаться без авторизации. Поэтому, в первый запуск, командная строка вас попросит авторизоваться:
Не обращайте внимание на то что я запускаю test.py, а не frog.py. Пример исключительно иллюстративный.
Хочу напомнить, что вам всё это придётся проделать лишь в первый раз, так что не волнуйтесь. В дальшейшем, вам нужно будет лишь запускать заветную линию
python frog.py юзернейм
каждые 9-10 дней, чтобы заполнять запланированные сообщения рутиной, и всё.
Введите свой номер телефона в указанном формате: +1234567890, (+7... для России, к примеру), и жмите Энтер. Введите y
и жмите Энтер (чтобы подтвердить то что вы правильно ввели номер телефона)
Можете ввести N и заново ввести свой номер, если вы вдруг ошиблись в первый раз.
Вам по телеграму отправят пятизначный номер - код подтверждения. Введите его в командную строку, и жмите Энтер. Если у вас включена двухфакторка, вводите свой пароль.
Вы авторизовались (надеюсь), и скрипт тут же начал свою работу (хоть этого может не будет видно), и в корневой директории (куда вы однажны вставили frog.py) был создан новый файл сессии frogbot_юзернейм.session. Теперь этот файлик будет служить плацдармом вашего удобного использования скрипта, так как вам не нужно будет каждый раз авторизовываться.
Подождите пока скрипт сделает свою работу (не закрывайте командную строку пока не появится привычный курсор для ввода - это значит что скрипт закончил свою работу).
Если по любой причине вам покажется, что этот .session файлик нужно удалить (думаете кто-то может получить к нему доступ или просто случайно удалили), то ничего страшного не будет - просто заново авторизуетесь.
Проверьте, что всё прошло успешно. Зайдите в вашу группу, и узрите, что произошло две вещи:
- В группе появилось 6 новых (а может и больше) сообщений, причем 3 из них написали вы (но вы ведь ничего не писали!). Всё нормально - сообщения эти за вас отправил скрипт, чтобы собрать данные по поводу времени отправки на работу и кормежки (а точнее он эти 3 сообщения отправил, а где-то 95-100 сообщений запланировал)
- Собственно у вас в запланированных теперь будет прописано 95-100 сообщений, которые покроют нужду в отправке на работу и кормежке жабы на следующие 9-11 дней.
Что-ж, поздравляю! Надеюсь у вас всё получилось. А вот и весь момент, который вам надо будет повторять раз в 9-11 дней:
Использование во второй и последующие разы.
Если вы захотите заново запустить скрипт, в версии 2.3 скрипта вам нужно будет удалить все запланированные сообщения в группе с жабаботом вручную, если такие есть (или остались с прошлого запуска), прежде чем заново запускать скрипт. Чтобы в следующий раз запустить скрипт, просто откройте командную строку и пропишите:
python frog.py юзернейм
Подождите немного пока скрипт закончит свою работу, и спокойно закрывайте командную строку.
Заключение.
Может (если вы не из моих друзей, для которых предназначался данный гайд) вы думаете, а как мне использовать этот скрипт для множества аккаунтов? Вдруг вы хотите прописывать что-то подобное в командную строку:
python frog.py account1 account2 account3 account4 account5
И чтобы скрипт прошелся по всем аккаунтам? Или вы хотите использовать расширенный функционал, не описанный здесь? (например, на момент версии 2.3, в скрипте есть возможность синхронизировать поход на работу множества аккаунтов, например для отправок на тусу, клановых войн, и так далее, или же другая возможность отправлять в придачу к кормежке и работе "Жаба дня" каждый день)
А может вы хотите узнать, как поменять работу (по умолчанию жаба отправляется на работу грабителем)?
Или, например, скрипт перед каждой отправкой на работу грабителем отправляет "Реанимировать жабу". Почему при таком подходе у жабы никогда не должны кончиться аптечки? (на самом деле это больше вывод из статистических данных, собранных мною, но это уже конкретно отдельная дискуссия)
Одним словом, есть ещё очень много чего, о чём я бы хотел рассказать вам или обсудить с вами о Жабаботе. Не знаю почему - но уж больно эта игра завораживает! Если вдруг (не знаю как это вообще должно произойти) другие игроки Жабабота реально заинтересуются моей работой (хотя это вообще не является моей целью - это всё я написал просто потому что я на голову шибанутый и меня в моей жизни интересуют только такие странные и по сути мало кому нужные вещи) - мой телеграм:
Пишите если обнаружите баги, недостатки как в этой статье, так и в моем скрипте, или если будут предложения.