Salta al contenuto
Damiano Taverni
EN
← Tutti i case study

Settore: Telegram · Servizio per un cliente

Telegram Chat Exporter — backup e archiviazione conversazioni

Tool Python realizzato per un cliente che esporta intere chat Telegram in un archivio HTML interattivo consultabile offline — con ricerca, media integrati e statistiche — oltre a un file di testo semplice.

HTML + TXT
Formati
Download selettivo
Media
Offline
Consultazione

Flusso del tool: API Telegram, filtri di esportazione, archivio HTML interattivo e TXT

Contesto

Telegram conserva le conversazioni sui propri server, ma chi ha bisogno di un archivio proprio — per backup, conservazione e riuso dei contenuti — non trova uno strumento flessibile: l’export nativo è rigido e poco filtrabile. Su richiesta di un cliente ho sviluppato un tool su misura che colma il vuoto via API ufficiali Telegram (MTProto), esportando qualsiasi chat, gruppo o canale a cui l’account partecipa.

Cosa fa

  • Selettore interattivo da terminale: cerca per nome o username tra tutte le chat dell’account.
  • Esporta in doppio formato: un file HTML autonomo che emula l’interfaccia di chat — avatar, riproduzione dei media inline, collegamenti tra risposte, reazioni, indice per giornata, barra di ricerca live, tema chiaro/scuro, pannello statistiche — e un TXT essenziale per archiviazione e grep.
  • Download selettivo dei media: foto, video, vocali, sticker, documenti — flag combinabili, con i file organizzati in una cartella dedicata.
  • Filtri di esportazione: intervallo di date, ricerca testuale, limite di messaggi, directory di output personalizzata.

Sfide tecniche

Rate limit e rispetto delle API. Telegram limita la frequenza delle richieste: l’export di chat con migliaia di messaggi deve dosare le chiamate per non incorrere in blocchi temporanei, restando nei termini d’uso della piattaforma.

Un HTML che è un’applicazione. Il file esportato non è un log statico: ricerca live, navigazione tra risposte e media inline funzionano senza server e senza connessione — tutto è incapsulato in un singolo file consultabile ovunque.

Robustezza contro un’API che evolve. La libreria client cambia attributi e strutture tra versioni (es. i metadati dei messaggi inoltrati): il parsing usa accessi difensivi per non rompersi su messaggi con strutture inattese.

Stack

Python · Telethon (MTProto API) · HTML/CSS/JS generato · CLI interattiva

Parliamo del tuo progetto

Raccontami cosa ti serve: ti rispondo entro 1–2 giorni lavorativi con una valutazione onesta e, se ha senso, un preventivo.