Рассмотрены основные методы, которые могут вам понадобиться для выполнения задач и которые чаще всего используются во время парсинга. Остальные можно найти в документации — https://docs.telethon.dev/en/stable/quick-references/client-reference.html.
Все методы применяются к экземпляру класса client = TelegramClient(‘session_name’, api_id, api_hash).
В библиотеке Telethon, а точнее в ее документации, почти все объекты обозначаются словом entity. Для работы многих методов и запросов требуются сущности entity. Entity — это не какой-то определенный объект библиотеки Telethon, а скорее слово, которое можно перевести как объект, сущность, организация, существо, вещь. Например, когда вам нужно отправить запрос, вы отправляете сущность entity, когда получаете объект, — это тоже сущность entity. Есть множество вещей, которые работают как сущность entity, — имена пользователей, номера телефонов, ссылка на чат, ссылки-приглашения, идентификаторы. Замените для себя слово entity на слово объект, смысл не меняется.
Авторизация
client.start() — запускает клиент (подключается и авторизуется при необходимости), создаёт файл *.session;
client.send_code_request() — отправляет код Telegram, необходимый для входа на указанный номер телефона;
client.sign_in() — авторизуется в Telegram под существующей учетной записью пользователя или бота;
client.qr_login() — инициирует процедуру входа в систему QR;
client.log_out() — выходит из Telegram и удаляет текущий *.session- файл.
Основа
client.connect() — подключается к Телеграму;
client.disconnect() — отключается от Telegram;
client.is_connected() — возвращает True, если пользователь подключился;
client.disconnected — свойство содержит объект Future, который разрешается (переходит в состояние завершённого), когда клиент отключается от сервера Telegram.
client.loop() — свойство с asyncio-циклом событий, используемым этим клиентом;
client.set_proxy() — изменяет прокси, который будет использоваться при следующем (повторном) подключении.
Сообщения
client.send_message() — отправляет сообщение указанному пользователю, чату или каналу;
client.edit_message() — редактирует данное сообщение, чтобы изменить его текст или медиа;
client.delete_messages() — удаляет указанные сообщения, опционально «для всех»;
client.forward_messages() — пересылает данные сообщения указанному объекту;
client.iter_messages() — итератор по сообщениям для данного чата;
client.get_messages() — то же , что и iter_messages(), но вместо этого возвращает TotalList;
client.pin_message() — закрепляет сообщение в чате;
client.unpin_message() — открепляет сообщение в чате;
client.send_read_acknowledge() — отмечает сообщения как прочитанные и при необходимости удаляет упоминания.
Загрузки
client.send_file() — отправляет сообщение с данным файлом указанному объекту;
client.upload_file() — загружает файл на серверы Telegram, не отправляя его.
Скачивания
client.download_media() — загружает указанный носитель из объекта сообщения;
client.download_profile_photo() — загружает фото профиля данного пользователя, чата или канала;
client.download_file() — низкоуровневый метод загрузки файлов из их исходного местоположения;
client.iter_download() — итерирует загрузку файла, получая фрагменты файла.
Диалоги
client.iter_dialogs() — итератор над диалогами (открытые разговоры/подписанные каналы);
client.get_dialogs() — то же , что и iter_dialogs(), но вместо этого возвращает TotalList;
client.edit_folder() — редактирует папку, используемую одним или несколькими диалоговыми окнами для их архивирования;
client.iter_drafts() — итератор над черновиками сообщений;
client.get_drafts() — то же , что и iter_drafts(), но вместо этого возвращает список;
client.delete_dialog() — удаляет диалог (покидает чат или канал);
client.conversation() — создает объект Conversationс заданным объектом.
Пользователи
client.get_me() — получает «О себе», текущего пользователя, вошедшего в систему;
client.is_bot() — возврат True, если вошедший пользователь является ботом, False в противном случае;
client.is_user_authorized() — возвращает True, если пользователь авторизован (вошел в систему);
client.get_entity() — превращает данный объект в допустимого пользователя(entity) Telegram , чат или канал;
client.get_input_entity() — превращает данный объект в версию входного объекта;
client.get_peer_id() — получает идентификатор для данной сущности.
Чаты
client.iter_participants() — итератор по участникам, принадлежащим указанному чату;
client.get_participants() — то же , что и iter_participants(), но вместо этого возвращает TotalList;
client.kick_participant() — выкидывает пользователя из чата;
client.iter_admin_log() — итератор над журналом администратора для указанного канала;
client.get_admin_log() — то же , что иiter_admin_log() но вместо этого возвращает list;
client.iter_profile_photos() — итератор по фотографиям профиля пользователя или фотографиям чата;
client.get_profile_photos() — то же , что иiter_profile_photos(), но вместо этого возвращает TotalList;
client.edit_admin() — редактирует права администратора для кого-либо в чате;
client.edit_permissions() — редактирует ограничения пользователя в чате;
client.get_permissions() — извлекает разрешения пользователя в определенном чате или канале или получает ограниченные права по умолчанию для чата или канала;
client.get_stats() — извлекает статистику из заданной мегагруппы или широковещательного канала;
client.action() — возвращает объект диспетчера контекста для представления «действия чата».