В python-telegram-bot как получить всех участников группы?

В Python-telegram-bot как получить, если возможно, полный список всех участников группы, в которую был добавлен бот?

Ответ 1

Вы не можете использовать текущий API, но вы можете присоединиться к нему через API-интерфейс.

Если вы проверите объект Message, вы найдете:

  • new_chat_participant: новый член был добавлен в группу, информация о них (этот член может быть сам ботом)
  • left_chat_participant: член удален из группы, информация о них (этот член может быть самим ботом)

Итак, с помощью этих двух данных вы можете отслеживать общее количество пользователей в чате и кто они.

Основной стратегией было бы хранить где-нибудь (например, базу данных) случаи присоединения и выхода пользователей из группы.

Когда пользователь присоединяется к чату, сохраняет объект User в хранилище. Когда пользователь выйдет из чата, удалите объект User из хранилища.

Хорошо, тогда сделайте логику по мере необходимости.

Ответ 2

Кроме того, последнее обновление API позволяет:

  • telegram.getChatMembersCount(chat_id). Используйте этот метод, чтобы получить количество участников в чате.

  • telegram.getChatMember(chat_id, user_id). Используйте этот метод для получения информации о члене чата.

Вы можете комбинировать стратегию new_chat_participant и left_chat_participant, чтобы создавать информацию о группе.

Дополнительная информация здесь: