Traffic Cardinal Traffic Cardinal написал 20.02.2024

Создаем бота для рассылки сообщений в Telegram

Traffic Cardinal Traffic Cardinal написал 20.02.2024
4 мин
0
1569
Содержание

Шел 2024 год, а рассылки, несмотря на весь хейт в их сторону — все еще не утратили своей актуальности. В сегодняшнем материале мы рассказали, как создать бота для рассылки сообщений в Telegram. Но сразу поспешим огорчить тех, кто решил, что сейчас начнет нещадно спамить — у Telegram есть лимиты. Хотя никто не мешает запустить несколько десятков копий этого бота с разных акков — аккаунты всегда и везде были расходником. Впрочем, статья не об этом.

banner banner

Какие задачи решает бот для рассылки сообщений

Как уже можно было понять выше, основная задача данного бота — не спам, а именно рассылки. Хотя, повторимся, у спамеров есть возможность запустить несколько копий бота. Однако бот все же создан для рассылок. Например, для массового ознакомления партнеров с акциями. Либо же для расшаривания читателям вашего канала какой-то полуприватной информации.

В общем, как обычно — все упирается лишь в вашу фантазию, поэтому не будем ходить вокруг да около. Скажем лишь, что, в отличие от обычных ботов, сообщение будет выглядеть так, как будто вы писали его руками. А это всегда плюс к трасту и лояльности.

Принцип работы бота для рассылки сообщений Telegram

Алгоритм бота прост до безобразия, но и задача относительно простая — рассылка. Почему же мы вообще решили поделиться этим ботом? Потому что это user-бот, а их, в отличие от классических Telegram-ботов, в «конструкторе» не соберешь. Итак, бот работает следующим образом:

  1. Авторизуется в заданном профиле.
  2. Считывает пользователей, которым будет рассылать сообщения из файла.
  3. Считывает текст сообщения из файла.
  4. Рассылает сообщения.

Как видите — ничего сверхсложного.

Пошаговая инструкция, как создать бота для рассылки сообщений в Telegram

Учитывая, что данный бот использует user_api, для его функционирования потребуется получение api_id и api_hash. Чтобы это сделать, необходимо:

  1. Пройти авторизацию в веб-версии.
  2. Зайти в раздел «API development tools» и заполнить данные о приложении.
  3. Сохранить полученные api_id и api_hash в текстовый редактор.

Также потребуется настроить сервер для работы с Telegram.

  1. Это делается вводом в консоль следующих команд:

pip install asyncio

pip install telethon

  1. После этого создаем на сервер файл .py с любым названием. Пусть это будет msg.py, добавляем в него следующее:

from telethon.sync import TelegramClient

# Замените на свои значения

API_ID = 'Укажите API ID'

API_HASH = Укажите API Hash'

PHONE_NUMBER = 'Укажите номер телефона'

SESSION_FILE = 'session_file.session'

MESSAGE = 'Укажите текст рассылки'

USERNAME_FILE = 'usernames.txt' # Файл с никнеймами пользователей

async def send_messages():

async with TelegramClient(SESSION_FILE, API_ID, API_HASH) as client:

# Авторизация

if not client.is_user_authorized():

await client.send_code_request(PHONE_NUMBER)

await client.sign_in(PHONE_NUMBER, input('Введите код из СМС: '))

# Отправка сообщений по никнеймам

with open(USERNAME_FILE, 'r') as file:

usernames = file.read().splitlines()

for username in usernames:

try:

await client.send_message(username, MESSAGE)

print(f"Сообщение отправлено пользователю с никнеймом {username}")

except Exception as e:

print(f"Ошибка при отправке сообщения пользователю с никнеймом {username}: {str(e)}")

if __name__ == '__main__':

import asyncio

asyncio.run(send_messages())

  1. Заменяем 'Укажите API ID', 'Укажите API Hash', 'Укажите номер телефона' и 'Укажите текст рассылки' — на свои api_id, api_hash, номер и сообщение соответственно.
  2. Сохраняем файл.
  3. Создаем файл usernames.txt
  4. Вносим в него ссылки на профили, которым будем рассылать сообщение. Формат — t.me/nickname. Каждую ссылку — с новой строки.
  5. Инициируем бота вводом:

python msg.py.

  1. Авторизуем бота в Телеге. Вводим номер при появлении «Please enter your phone (or bot token)». Затем — код, который придет в Телегу.

Готово.

Демонстрация работы

Список профилей для рассылки

Непосредственно рассылка
Непосредственно рассылка

Подводя итоги

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

Здравствуйте! У вас включен блокировщик рекламы, часть сайта не будет работать!