from pyrogram import Client import asyncio api_id = 1111 api_hash = "" group_url = "Test_group" app = Client("my_session", api_id=api_id, api_hash=api_hash) def main(): with app: chat = app.get_chat(group_url) print(type(chat)) main()
<class 'pyrogram.types.user_and_chats.chat.Chat'>
Класс pyrogram.types.user_and_chats.chat.Chat представляет собой объект чата и содержит различные атрибуты и методы для работы с этим чатом.
Вот некоторые из атрибутов, которые могут быть доступны в объекте Chat:
chat.id — уникальный идентификатор чата;
chat.type — тип чата (может быть «private», «group», «supergroup» или «channel»);
chat.username — имя пользователя чата, если это личный чат, или @username канала/супергруппы;
chat.first_name и last_name — имя и фамилия пользователя, если это личный чат;
chat.title — название группы, супергруппы или канала;
chat.description — описание группы, супергруппы или канала;
chat.pinned_message — закрепленное сообщение в чате, если оно есть;
chat.permissions — права участников чата;
chat.photo — фотография профиля чата, если она установлена.
Этот JSON представляет собой словарь с информацией о чате в Telegram, полученной с использованием библиотеки Pyrogram. Вот описание каждой строки:
Для лучше читаемости, скопируйте этот JSON куда-нибудь где нет ограничений по длине строки.
{ "_": "Chat", # Тип объекта, в данном случае это чат. "id": -1001792221154, # Уникальный идентификатор чата. (chat.id) "type": "ChatType.SUPERGROUP", # Тип чата, в данном случае это супергруппа. (chat.type) "is_verified": false, # Флаг, показывающий, верифицирован ли чат. (chat.is_verified) "is_restricted": false, # Флаг, показывающий, ограничен ли доступ к чату. (chat.is_restricted) "is_creator": false, # Флаг, показывающий, является ли пользователь создателем чата. (chat.is_creator) "is_scam": false, # Флаг, показывающий, является ли чат мошенническим. (chat.is_scam) "is_fake": false, # Флаг, показывающий, является ли чат фальшивым. (chat.is_fake) "title": "Test_group", # Название чата. (chat.title) "username": "Test_group", # Имя пользователя чата (если это канал или супергруппа). (chat.username) "photo": { # Фотография профиля чата. (chat.photo) "_": "ChatPhoto", # Тип объекта, в данном случае это фотография чата. "small_file_id": "AQADAgAD7MxG4XoQUoAEAIAA57hUMAW____Ft-3784XVesABB4E", # ID маленькой версии фотографии. (chat.photo.small_file_id) "small_photo_unique_id": "AgAD7MxG4XoQUo", # Уникальный ID маленькой версии фотографии. (chat.photo.small_photo_unique_id) "big_file_id": "AQADAgAD7MMx4XoQUoAEAMAA57hUMAW____Ft-3784XVesABB4E", # ID большой версии фотографии. (chat.photo.big_file_id) "big_photo_unique_id": "AgAD7MMG4XoQUo" # Уникальный ID большой версии фотографии. (chat.photo.big_photo_unique_id) }, "description": "dgf8974503g+380553g4+556034+5j08456670k4865;740359-'4=0654544066f5450646554k0456678064+g466445+97460h4567321645k565789060k6758490546673574560+7tg456857+45680g766409j32740658974=-60954=56436540526531405g3254645625034535424365067h74563765j5646857k4063", # Описание чата. (chat.description) "dc_id": 2, # ID центра данных, где хранится информация о чате. (chat.dc_id) "has_protected_content": false, # Флаг, показывающий, содержит ли чат защищенный контент. (chat.has_protected_content) "pinned_message": { # Закрепленное сообщение в чате. (chat.pinned_message) "_": "Message", # Тип объекта, в данном случае это сообщение. "id": 330, # ID сообщения. (chat.pinned_message.id) "from_user": { # Пользователь, отправивший сообщение. (chat.pinned_message.from_user) "_": "User", # Тип объекта, в данном случае это пользователь. "id": 5769844345, # ID пользователя. (chat.pinned_message.from_user.id) "is_self": false, # Флаг, показывающий, является ли пользователь текущим пользователем. (chat.pinned_message.from_user.is_self) "is_contact": false, # Флаг, показывающий, находится ли пользователь в контактах. (chat.pinned_message.from_user.is_contact) "is_mutual_contact": false, # Флаг, показывающий, является ли пользователь взаимным контактом. (chat.pinned_message.from_user.is_mutual_contact) "is_deleted": false, # Флаг, показывающий, удален ли аккаунт пользователя. (chat.pinned_message.from_user.is_deleted) "is_bot": false, # Флаг, показывающий, является ли пользователь ботом. (chat.pinned_message.from_user.is_bot) "is_verified": false, # Флаг, показывающий, верифицирован ли пользователь. (chat.pinned_message.from_user.is_verified) "is_restricted": false, # Флаг, показывающий, ограничен ли доступ пользователя. (chat.pinned_message.from_user.is_restricted) "is_scam": false, # Флаг, показывающий, является ли аккаунт пользователя мошенническим. (chat.pinned_message.from_user.is_scam) "is_fake": false, # Флаг, показывающий, является ли аккаунт пользователя фальшивым. (chat.pinned_message.from_user.is_fake) "is_support": false, # Флаг, показывающий, является ли пользователь сотрудником поддержки Telegram. (chat.pinned_message.from_user.is_support) "is_premium": false, # Флаг, показывающий, является ли пользователь премиум-пользователем. (chat.pinned_message.from_user.is_premium) "first_name": "Larry", # Имя пользователя. (chat.pinned_message.from_user.first_name) "last_name": "Summers", # Фамилия пользователя. (chat.pinned_message.from_user.last_name) "status": "UserStatus.OFFLINE", # Статус пользователя (в данном случае оффлайн). (chat.pinned_message.from_user.status) "last_online_date": "2025-01-24 15:39:57", # Последняя дата онлайн. (chat.pinned_message.from_user.last_online_date) "username": "User123", # Имя пользователя в Telegram. (chat.pinned_message.from_user.username) "dc_id": 5, # ID центра данных, где хранится информация о пользователе. (chat.pinned_message.from_user.dc_id) "photo": { # Фотография профиля пользователя. (chat.pinned_message.from_user.photo) "_": "ChatPhoto", # Тип объекта, в данном случае это фотография чата. "small_file_id": "AQADBQADAbEGw3rgFYAEAIAA8mhslkBAAPoL1uFHxdshAEHgQ", # ID маленькой версии фотографии. (chat.pinned_message.from_user.photo.small_file_id) "small_photo_unique_id": "AgADAGw3rgFY", # Уникальный ID маленькой версии фотографии. (chat.pinned_message.from_user.photo.small_photo_unique_id) "big_file_id": "AQADBQADAbExGw3gFYAEAMAA8mhslkBAAPoL1uFHxshgAEHgQ", # ID большой версии фотографии. (chat.pinned_message.from_user.photo.big_file_id) "big_photo_unique_id": "AgADA3rgFY" # Уникальный ID большой версии фотографии. (chat.pinned_message.from_user.photo.big_photo_unique_id) } }, "date": "2025-01-24 15:27:03", # Дата отправки сообщения. (chat.pinned_message.date) "chat": { # Чат, в котором было отправлено сообщение. (chat.pinned_message.chat) # ... (информация о чате, аналогична предыдущему описанию) }, "mentioned": false, # Флаг, показывающий, упоминается ли в сообщении текущий пользователь. (chat.pinned_message.mentioned) "scheduled": false, # Флаг, показывающий, является ли сообщение запланированным. (chat.pinned_message.scheduled) "from_scheduled": false, # Флаг, показывающий, отправлено ли сообщение из запланированных. (chat.pinned_message.from_scheduled) "media": "MessageMediaType.PHOTO", # Тип медиа в сообщении (в данном случае фото). (chat.pinned_message.media) "has_protected_content": false, # Флаг, показывающий, содержит ли сообщение защищенный контент. (chat.pinned_message.has_protected_content) "has_media_spoiler": false, # Флаг, показывающий, содержит ли сообщение спойлер медиа. (chat.pinned_message.has_media_spoiler) "photo": { "_": "Photo", # Тип объекта "file_id": "AgACAgUAAx0CawoOYgACAUplQ1g5FZecjTHSMcKeyBXYOqQiEQACdLUxGztEeVb1sKmzMscIDgAIAQADAgADeAAHHgQ", # ID файла фотографии (chat.pinned_message.photo.file_id) "file_unique_id": "AgADdLUxGztEeVY", # Уникальный ID файла фотографии (chat.pinned_message.photo.file_unique_id) "width": 700, # Ширина фотографии (chat.pinned_message.photo.width) "height": 700, # Высота фотографии (chat.pinned_message.photo.height) "file_size": 72267, # Размер файла фотографии в байтах (chat.pinned_message.photo.file_size) "date": "2023-01-24 15:27:02", # Дата отправки фотографии (chat.pinned_message.photo.date) "thumbs": [ # Миниатюры фотографии (chat.pinned_message.photo.thumbs) { "_": "Thumbnail", # Тип объекта "file_id": "AgACAgUAAx0awoOYgACAUplQ1g5FZecjTHSMcKeyBXYOqQiEQACdLUGztEeVb1sKmzMscIDgAIAQADAgADbQAHHgQ", # ID файла миниатюры (chat.pinned_message.photo.thumbs[0].file_id) "file_unique_id": "AgADdUxGztEeVY", # Уникальный ID файла миниатюры (chat.pinned_message.photo.thumbs[0].file_unique_id) "width": 320, # Ширина миниатюры (chat.pinned_message.photo.thumbs[0].width) "height": 320, # Высота миниатюры (chat.pinned_message.photo.thumbs[0].height) "file_size": 25406 # Размер файла миниатюры в байтах (chat.pinned_message.photo.thumbs[0].file_size) } ] }, "outgoing": false, # Флаг, показывающий, является ли сообщение исходящим (chat.pinned_message.outgoing) "can_set_sticker_set": false, # Флаг, показывающий, может ли пользователь устанавливать набор стикеров в чате (chat.can_set_sticker_set) "members_count": 20, # Количество участников чата (chat.members_count) "permissions": { # Права участников чата (chat.permissions) "_": "ChatPermissions", # Тип объекта "can_send_messages": false, # Флаг, показывающий, могут ли участники отправлять сообщения (chat.permissions.can_send_messages) "can_send_media_messages": false, # Флаг, показывающий, могут ли участники отправлять медиа-сообщения (chat.permissions.can_send_media_messages) "can_send_other_messages": false, # Флаг, показывающий, могут ли участники отправлять другие типы сообщений (chat.permissions.can_send_other_messages) "can_send_polls": false, # Флаг, показывающий, могут ли участники отправлять опросы (chat.permissions.can_send_polls) "can_add_web_page_previews": false, # Флаг, показывающий, могут ли участники добавлять предпросмотр веб-страниц (chat.permissions.can_add_web_page_previews) "can_change_info": false, # Флаг, показывающий, могут ли участники изменять информацию о чате (chat.permissions.can_change_info) "can_invite_users": false, # Флаг, показывающий, могут ли участники приглашать других пользователей (chat.permissions.can_invite_users) "can_pin_messages": false # Флаг, показывающий, могут ли участники закреплять сообщения (chat.permissions.can_pin_messages) } }
Предположим ваша цель добраться до значения «big_photo_unique_id»: «AgADAbExGw3rgFY», необходимо использовать следующий путь chat.pinned_message.from_user.photo.big_photo_unique_id:
Этот путь обращается к следующим элементам в этой структуре данных:
chat — объект чата;
pinned_message — закрепленное сообщение в чате;
from_user — пользователь, отправивший закрепленное сообщение;
photo — фотография профиля пользователя.
big_photo_unique_id — уникальный идентификатор большой версии фотографии профиля пользователя.
Точка (.) в выражении chat.pinned_message.from_user.photo.big_photo_unique_id используется для доступа к атрибутам или свойствам объекта. Это называется «точечная нотация». Каждая точка в выражении указывает на переход к вложенному атрибуту или свойству объекта. Таким образом можно извлекать любые данные из любых объектов предоставляемые API Telegram.