• XSS.stack #1 – первый литературный журнал от юзеров форума

Создание тг-бота под видом обычного аккаунта

Maxwell

CD-диск
Пользователь
Регистрация
11.05.2025
Сообщения
16
Реакции
0
Сегодня я расскажу про свой опыт создания телеграм-бота под видом обычного пользователя.

Обычные боты в Тг создаются через Bot API, однако они видны как боты, а также имеют ряд ограничений (не могут инициировать диалоги).
Поэтому для создания бота, замаскированного под аккаунт в тг, необходимо использовть Telegram API. Для этого нужно получить ваши API ID и API HASH на my.telegram.org. (Лично у меня почему-то при регистрации своего приложения с компьютера выдает ошибку, однако проблем со входом с мобильного устройства почему-то нет).

Эти переменные из соображений безопасности стоит хранить в окружении (env).

1. В корне проекта создаем файл .env, где прописываем данные своего аккаунт в следующем формате:
API_ID=1234567
API_HASH=abcdef12345abcdef12345
PHONE=+79991234567


2. Для бота будем использовать библиотеку Telethon, а также python-dotenv для загрузки переменных окружения
Само окружение .env добавляется в код через load_dotenv(), чтобы затем присвоить новым переменным в этом коде данные из .env (API_ID и тд):

Python:
from telethon.sync import TelegramClient
from dotenv import load_dotenv
import os


load_dotenv()

api_id = int(os.getenv("API_ID"))
api_hash = os.getenv("API_HASH")
phone = os.getenv("PHONE")

client = TelegramClient('session_name', api_id, api_hash)
client.start(phone)

async def send_message():
    await client.send_message('username', 'Сообщение от обычного пользователя!')

with client:
    client.loop.run_until_complete(send_message())

session_name тут это имя файла session_name.session, куда Telethon сохраняет данные авторизации, чтобы не нужно было вводить их вручную каждый раз. Насколько я помню, если у вас стоит двухфакторная аутентификация, вам придет уведомление о входе. Но при дальнейших запусках этого не будет.
Дальше уже весь функционал зависит только от вашей фантазии. Можно через API добавить туда ChatGPT, но об этом не в этой статье.

P.S.: Если вы создаете такого бота с целью спама в разных группах, то не стоит делать это с новорегами, так как они быстро отлетают за спам. Лучше дать такому аккаунту посуществовать какое-то время, попользуйтесь им, а еще лучше купите для него премиум, чтобы реже отлетать за спам.
 
Последнее редактирование:
Можно через API добавить туда ChatGPT, но об этом не в этой статье.
Мне почему то кажется что и эта статья сделана через ии


phone = os.getenv("PHONE")
зачем указывать номер если его можно ввести в консоль?


client = TelegramClient('session_name', api_id, api_hash)
Шанс того что все сессии вылетят с аккаунта примерно 90% ТК не указано не модели не устройство
 
Мне почему то кажется что и эта статья сделана через ии
Сам писал, просто думал, что сделаю продолжение в будущем, но лень стало.

Я сам делал все, что указал выше, все работало.
 
Последнее редактирование:
Не особо конечно актуально для нынешнего положения дел)
Еще в середине весны в 2022 все бы работало, но сейчас сессии могут быстро отлетать. Лучше тарить аккаунты, которые имеют хорошую отлегу и JSON в комплекте. Так хоть какая-то эффективность будет выдавливаться.
 
Не особо конечно актуально для нынешнего положения дел)
Еще в середине весны в 2022 все бы работало, но сейчас сессии могут быстро отлетать. Лучше тарить аккаунты, которые имеют хорошую отлегу и JSON в комплекте. Так хоть какая-то эффективность будет выдавливаться.
Возможно.

Я только однажды такое делал, и то мне нужно было ненадолго бота запускать, так что допускаю, что ты прав. Большого опыта в этом у меня нет.
 
Не особо конечно актуально для нынешнего положения дел)
Еще в середине весны в 2022 все бы работало, но сейчас сессии могут быстро отлетать. Лучше тарить аккаунты, которые имеют хорошую отлегу и JSON в комплекте. Так хоть какая-то эффективность будет выдавливаться.
Что за json?
 
Что за json?
Если тарите на более-менее порядочном форуме\поставщике, то будет идти TDATA, .session и json в архиве акаунта. В самом JSON вписаны данные, которые можно дополнительно передать, как авторизационные. Они к слову хоть как-то влияют на отлет аккаунта.
 
Если тарите на более-менее порядочном форуме\поставщике, то будет идти TDATA, .session и json в архиве акаунта. В самом JSON вписаны данные, которые можно дополнительно передать, как авторизационные. Они к слову хоть как-то влияют на отлет аккаунта.
Я обычно сам регаю. Так меньше вероятность всякой фигни
 
Я обычно сам регаю. Так меньше вероятность всякой фигни
Я как то пытался тоже руками. 50/50. Были моменты, когда слетали очень быстро
 
Да уж, не порадовало если честно, посмотрите лучше мои работы по клиентским ботам на этом форуме. И найдете для себя много полезного чтобы сессии не отлетали в бан. Также для работы с телетоном рекомендую использовать акки с премом и активностью, также оставлял где-то ссыль на гит форка пирограма (неплохая альтернатива), пользуйтесь поиском по моим сообщениям или темам.

P.S. За инициативу +, за реализацию -
 
В чем прикол использовать telethon 2025 году? Есть масса отличных альтернатив. Я лично использую pyrofork(форк pyrogram), и за все время пользования сессия ни разу не слетела
 
В чем прикол использовать telethon 2025 году? Есть масса отличных альтернатив. Я лично использую pyrofork(форк pyrogram), и за все время пользования сессия ни разу не слетела
А почему не Kurigram? =) Телетон можно тоже юзать, с определенными нюансами.
 
не слышал про него
У них даже дока есть и по комитам вроде вчера сравнивал на гите Kurigram чаще обновляется как форк пирограма. Также есть официальное комьюнити в тг: @kurigram_chat
 
Чтобы не плодить темы, рискну задать вопрос тут. Имею подозрение, что с недавних пор телега очень щепетильно относится к парсингу каналов, а именно - к функции itermassages. Несколько раз было, что аккаунты улетали в бан без предупреждения после нескольких часов парсинга таким способом. ПРи этом если делать экспорт канала с помощью десктопного клиента, то все норм. Кто-нить знает, как это реализовано в десктопном клиенте телеги? Я уже качаю исходники, но вдруг кто-то уже разбирался?...
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх