раздел 00

Что такое Telethon

Telethon - это Python-библиотека для работы с Telegram. Она общается с серверами Telegram по их «родному» протоколу MTProto, тому самому, на котором работают официальные приложения. Поэтому Telethon - не обёртка над ботами, а полноценный клиент: он может зайти в Telegram точно так же, как зашли бы вы со своего телефона.

Главная идея: Telethon может входить под обычным пользовательским аккаунтом, а не только как бот. Из этого вытекает всё - и его возможности, и его риски.

Бот или пользователь

Telegram даёт два способа автоматизации. Telethon умеет оба, но интересен он именно первым.

User account (пользователь)
Вход под вашим номером телефона. Видно всё то же, что видите вы: личные чаты, группы, каналы, история, медиа.
Bot (бот)
Telethon может работать и как бот по токену. Тогда ограничения те же, что у обычного Bot API.

Что умеет под user-аккаунтом

  • Читать историю чатов и каналов - даже старые сообщения.
  • Выгружать сообщения и медиа: фото, видео, файлы, голосовые.
  • Автоматизировать действия аккаунта: отправлять, пересылать, отвечать.
  • Мониторить публичные каналы и реагировать на новые сообщения.
  • Делать рассылки по своим контактам и чатам.

Bot API так не умеет: бот видит только те чаты, где он есть, и только сообщения после того, как его добавили. Подробный разбор разницы - в следующем разделе.

Что разберём

  • 01 - чем Telethon под user-аккаунтом отличается от обычного бота.
  • 02 - установка, api_id, api_hash и первый вход.
  • 03 - базовые операции: читать, отправлять, скачивать, слушать.
  • 04 - риски, лимиты и прокси.
  • 05 - шпаргалка со сниппетами.