Ultimas do CanalQb

Python - Telegram - Como extrair informações da Biografia de um canal

@CanalQb


Python - Telegram - Como extrair informações da Biografia de um canal



CanalQb



Sempre crie uma frase de segurança única para jogos, Airdrops e qualquer outra coisa de origem desconhecida, em vez de usar sua carteira principal.



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ê faz parte, ou até mesmo deletar suas mensagens de um grupo, este guia vai te ensinar como fazer isso usando o Telethon.

1. Extrair informações da bio de um canal, bot, grupo ou usuário
Para obter a bio de um usuário ou canal, vamos usar a função GetFullUserRequest da API do Telegram. Neste exemplo, 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 pesquisar. O código vai retornar a bio (descrição) do usuário, caso ele tenha uma definida.

2. Listar todos os grupos que você faz parte
Se você deseja listar todos os grupos, canais e diálogos dos quais faz parte, use o método get_dialogs(). Esse 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 vai listar o nome de exibição de todos os grupos, canais e chats em que você está. O get_display_name é uma função útil para garantir que sempre seja retornado um nome, seja de um grupo, chat individual ou canal.

3. Deletar todos os seus envios em um grupo
Se você quiser apagar todas as mensagens que você enviou em um grupo específico, você pode usar a função DeleteHistoryRequest. Abaixo, um exemplo de como fazer isso:

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))
Aqui está o que cada parâmetro faz:
peer=chat: O identificador do grupo ou chat.
max_id=0: Apaga todas as mensagens. (Se você quiser apagar até uma mensagem específica, pode definir o ID da mensagem aqui).
just_clear=True: Limpa o histórico apenas no seu lado, mas não o de outras pessoas. Caso queira apagar para todos, mantenha o revoke=True.
Conclusão

Usando o Telethon, você consegue realizar uma série de automações úteis no Telegram, desde extrair informações de usuários e canais, até deletar mensagens e listar os grupos em que você participa. Com esses exemplos, você já pode começar a explorar mais possibilidades!

Dicas:

Autenticação: Não se esqueça que, para rodar esses scripts, você precisa estar autenticado com o TelegramClient e ter uma API do Telegram configurada.
Cuidado ao apagar mensagens: Use a função de deletar com responsabilidade, principalmente em grupos grandes ou canais públicos.
Se tiver dúvidas ou quiser mais tutoriais, deixe nos comentários!

Nenhum comentário

Comente só assim vamos crescer juntos!

Observação: somente um membro deste blog pode postar um comentário.