
Python - Telegram: Como extrair informações da Biografia de um canal
O Telethon é uma biblioteca poderosa para automatizar diversas tarefas no Telegram usando Python. Se você deseja extrair a bio de um usuário, listar todos os grupos que você participa ou até mesmo deletar suas mensagens de um grupo, este guia vai ensinar como fazer isso utilizando o Telethon de forma prática e segura.
1. Extrair informações da bio de um canal, bot, grupo ou usuário
Para obter a bio de um usuário ou canal, usaremos a função GetFullUserRequest
da API do Telegram. No exemplo abaixo, extraímos a bio do usuário com o username "canalqb":
from telethon.tl.functions.users import GetFullUserRequest
# Supondo que já tenha o cliente autenticado
username = "canalqb" # Substitua pelo username desejado
full = client(GetFullUserRequest(username))
bio = full.full_user.about
print(f"Bio do usuário {username}: {bio}")
Aqui, substitua "canalqb"
pelo username que você quer consultar. O código retorna a bio (descrição) do usuário, caso esteja definida.
2. Listar todos os grupos que você faz parte
Se deseja listar todos os grupos, canais e chats dos quais participa, utilize o método get_dialogs()
. Este método retorna todos os diálogos ativos (grupos, canais e chats individuais):
from telethon import TelegramClient
from telethon.utils import get_display_name
# Pega todos os diálogos (grupos, canais e chats)
dialogs = client.get_dialogs()
# Itera sobre os diálogos e imprime os nomes de exibição
for dialog in dialogs:
entity = dialog.entity
display_name = get_display_name(entity)
print(f"Nome de exibição: {display_name}")
Este código lista o nome de exibição de todos os grupos, canais e chats em que você está. A função get_display_name
é útil para garantir que sempre será retornado um nome válido, seja de grupo, chat individual ou canal.
3. Deletar todas as suas mensagens em um grupo
Para apagar todas as mensagens que você enviou em um grupo específico, utilize a função DeleteHistoryRequest
. Veja o exemplo:
from telethon.tl.functions.messages import DeleteHistoryRequest
# Substitua "chat" pelo identificador do grupo/canal
client(DeleteHistoryRequest(peer=chat, max_id=0, just_clear=True, revoke=True))
Descrição dos parâmetros:
- peer=chat: O identificador do grupo ou chat.
- max_id=0: Apaga todas as mensagens. Caso queira apagar até uma mensagem específica, defina o ID da mensagem.
- just_clear=True: Limpa o histórico apenas no seu lado, sem afetar outras pessoas. Para apagar para todos, mantenha
revoke=True
.
Conclusão
Usando o Telethon, é possível realizar várias automações úteis no Telegram, desde a extração de informações de usuários e canais até a exclusão de mensagens e listagem dos grupos em que você participa. Com esses exemplos, você pode começar a explorar diversas possibilidades e criar scripts personalizados conforme sua necessidade.
Dicas importantes
- Autenticação: Para rodar esses scripts, certifique-se de estar autenticado com o
TelegramClient
e ter uma API do Telegram configurada corretamente. A documentação oficial está disponível no site oficial do Telethon. - Segurança: Tenha cuidado ao apagar mensagens, especialmente em grupos grandes ou canais públicos. Use essa função com responsabilidade.
- Responsabilidade: Ao utilizar scripts para automação, analise individualmente os riscos e evite executar ações sem pleno entendimento.
Se tiver dúvidas ou quiser mais tutoriais, deixe seus comentários para que possamos ajudar você!