Вас снова приветствует, connectUSB! Сейчас мы напишем простенький спамер для телеги на телетоне. Ну и по обычаю как только будет 30+ реакций публикую более лучшей и продвинутый спамер, с огромным функционалом))
Код, который я предоставлю, является примером использования библиотеки Telethon для отправки сообщений и управления диалогами в Telegram. Давайте разберем каждую часть кода:
Код, который я предоставлю, является примером использования библиотеки Telethon для отправки сообщений и управления диалогами в Telegram. Давайте разберем каждую часть кода:
- Импорт необходимых модулей:
Python:from telethon.sync import TelegramClient, errorsfrom time import sleep from telethon.errors.rpcerrorlist import MessageTooLongError, PeerIdInvalidError import dbm
В этом блоке мы импортируем необходимые модули: TelegramClient для создания клиента Telegram, errors для обработки ошибок в Telethon, sleep для приостановки выполнения программы, MessageTooLongError и PeerIdInvalidError для обработки ошибок связанных с сообщениями, и dbm для работы с базой данных dbm.
- Функция dbm_base():
Python:def dbm_base(): file = dbm.open("api.dbm", "c") try: file["api_id"] except: file["api_id"] = input("Введите api_id:") file["api_hash"] = input("Введите api_hash:") file.close() return dbm.open("api.dbm", "r")
Эта функция отвечает за работу с базой данных dbm. Она проверяет наличие значений api_id и api_hash в файле базы данных. Если значения отсутствуют, пользователю предлагается ввести их вручную. Затем функция возвращает открытый для чтения объект dbm.
- Получение значений API:
Python:file = dbm_base()api_id = int(file["api_id"].decode()) api_hash = file["api_hash"].decode() client = TelegramClient("client", api_id, api_hash)
В этой части кода вызывается функция dbm_base() для получения значений api_id и api_hash из базы данных. Затем создается клиент TelegramClient с использованием этих значений.
- Функция dialog_sort():
Python:def dialog_sort(dialog): return dialog.unread_count
Эта функция используется для сортировки диалогов. Она принимает объект диалога и возвращает количество непрочитанных сообщений в этом диалоге. Она будет использоваться позже для сортировки списка групп.
- Функция spammer():
Python:def spammer(client): ...
Это основная функция, которая отвечает за отправку сообщений в группы. Она принимает клиент TelegramClient в качестве параметра.
- Функция create_groups_list():
Python:def create_groups_list(groups=[]): ...
Код:
Эта внутренняя функция используется внутри spammer() для создания списка групп. Она перебирает все диалоги и добавляет группы (диалоги с dialog.is_group == True и dialog.unread_count >= 1) в список. Затем список групп сортируется с использованием функции dialog_sort(), и только первые 900 групп сохраняются.
- Основной цикл spammer():
Python:with client: ...
Здесь начинается основной цикл spammer(). С помощью оператора with клиент подключается к Telegram API.
- Получение сообщения для пересылки:
Python:for m in client.iter_messages("me", 1): msg = m
В этой части кода мы получаем последнее сообщение из диалога с самим собой ("me") и сохраняем его в переменной msg.
- Основной цикл отправки сообщений в группы:
Python:while True: groups = create_groups_list() groups.sort(key=dialog_sort, reverse=True) for g in groups[:900]: try: client.forward_messages(g, msg, "me") except errors.ForbiddenError as o: ... except errors.FloodError as e: ... except PeerIdInvalidError: ... except MessageTooLongError: ... except errors.BadRequestError as i: ... except errors.RPCError as a: ... sleep(60) groups.clear()
В этой части кода мы получаем список групп с использованием create_groups_list(), сортируем его по количеству непрочитанных сообщений и выбираем первые 900 групп. Затем мы перебираем эти группы и пытаемся переслать сообщение msg в каждую группу с помощью client.forward_messages(). Если возникают ошибки, они обрабатываются соответствующим образом. Затем программа ждет 60 секунд и повторяет цикл.
- Вызов spammer(client):
Python:if __name__ == "__main__": spammer(client)
Этот блок кода вызывает функцию spammer(client) для запуска процесса отправки сообщений.
Весь код написан на языке Python и предназначен для автоматической отправки сообщений в группы в Telegram. Пожалуйста, обратите внимание, что использование подобных скриптов для спама и нежелательных действий может нарушать правила платформы Telegram и привести к блокировке вашего аккаунта.
Скрытое содержимое доступно для зарегистрированных пользователей!