Message Album
← Todos os guias

Como exportar uma conversa inteira do iMessage no Mac

Por que o app Mensagens não tem comando de exportação, os métodos gratuitos que funcionam mesmo assim, como obter o histórico que nunca sincronizou com o seu Mac, e como terminar com um álbum que você ainda conseguirá abrir daqui a anos.

· 5 min read

O app Mensagens no macOS não tem comando de Exportar. Nunca teve. Pesquise essa dúvida e os primeiros resultados são um tópico do suporte da Apple e um post do Reddit, o que já diz bastante sobre quão bem as opções nativas resolveram isso.

Aqui está o que realmente funciona.

Onde a conversa fica

Num Mac, o Mensagens guarda tudo em um banco de dados SQLite em ~/Library/Messages/chat.db, com os anexos em ~/Library/Messages/Attachments/. O macOS protege os dois: nenhum app consegue lê-los sem receber Acesso Total ao Disco nos Ajustes do Sistema, e a pasta fica oculta no Finder por padrão.

Duas coisas decorrem disso, e elas explicam quase toda a confusão em torno do assunto:

  1. Qualquer ferramenta que exporte suas mensagens precisa de Acesso Total ao Disco. Isso por si só não é sinal de alarme: é o único jeito que o macOS permite. O que importa é o que a ferramenta faz depois de ler o arquivo.
  2. O banco de dados é detalhe interno privado da Apple. A estrutura muda entre versões do macOS sem aviso. É por isso que ferramentas de exportação precisam ser atualizadas, e por isso que um álbum exportado nunca deveria estar no formato da Apple.

Método 1: Imprimir em PDF (gratuito, nativo, limitado)

  1. Abra o Mensagens e selecione a conversa.
  2. Role até o topo da conversa segurando Command + seta para cima, até parar de carregar mensagens antigas.
  3. Arquivo › Imprimir, depois PDF › Salvar como PDF.

Funciona, e para uma conversa curta é a resposta certa. Dois limites reais: você tem que carregar a conversa inteira rolando, o que é penoso com anos de histórico, e um PDF não consegue guardar vídeo ou áudio que toquem.

Método 2: Consultar o banco de dados você mesmo (gratuito, técnico)

Como chat.db é um arquivo SQLite padrão, dá para consultá-lo direto. Dê Acesso Total ao Disco ao seu terminal primeiro, e então:

sqlite3 ~/Library/Messages/chat.db

Fique atento a três armadilhas que pegam quem faz isso na mão:

  • Os horários não são tempo Unix. O Mensagens guarda nanossegundos desde 2001-01-01, então você precisa de datetime(message.date/1000000000 + 978307200, 'unixepoch').
  • text costuma ser NULL. As mensagens modernas guardam o conteúdo em attributedBody, um typedstream serializado da Apple, e não na coluna simples text. Decodificar isso direito é a parte difícil do problema inteiro, e tratar o binário ingenuamente como UTF-16 produz lixo que parece quase certo.
  • Abra em somente leitura. Use file:...?mode=ro para que uma consulta descuidada nunca consiga escrever no seu banco do Mensagens em uso.

Se você quiser essa rota feita direito em vez de na mão, o imessage-exporter é gratuito, de código aberto e decodifica o typedstream corretamente.

Método 3: Exportar para um álbum (o que a maioria realmente quer)

O resultado que a maioria busca é uma pasta que dê para guardar: a conversa inteira, legível sem software especial, com as fotos e os vídeos intactos.

Isso significa uma exportação que produza:

  • Todas as mensagens dos dois lados, em ordem, com horários.
  • Todos os anexos copiados na qualidade original, não redimensionados dentro de um documento.
  • Um formato que não dependa da ferramenta que o criou. HTML, JSON e Markdown simples servem. Um banco de dados proprietário não.

Nessa categoria estão o imessage-exporter, o iMazing, o Decipher TextMessage e o Message Album, que fez este site. A ênfase específica do Message Album é o último ponto: a exportação é um site offline autossuficiente, sem framework, CDN, fonte externa ou servidor, mais um manifesto de somas SHA-256, partindo da ideia de que aquilo que você está guardando não deveria parar de funcionar porque uma dependência sumiu.

Obter o histórico que nunca sincronizou com o seu Mac

Esse é o passo que a maioria dos guias pula, e muitas vezes é a razão de uma exportação sair incompleta.

Seu Mac só tem as mensagens que sincronizaram até ele. Se a conversa começou antes de você ter esse Mac, ou se o “Mensagens no iCloud” descarregou anexos antigos, exportar da biblioteca do próprio Mac vai deixar coisas de fora em silêncio.

A solução é exportar de um backup de iPhone:

  1. Conecte o iPhone ou iPad e abra o Finder.
  2. Selecione o aparelho na barra lateral.
  3. Escolha Fazer Backup Agora. Backups criptografados e não criptografados contêm Mensagens. Marque Criptografar backup local se você também quiser Saúde e outros dados protegidos.
  4. Aponte sua ferramenta de exportação para esse backup em vez da biblioteca do Mac.

O backup contém o que está no telefone, que normalmente é mais do que chegou ao Mac.

Como saber se uma exportação está completa

Faça uma única pergunta a qualquer ferramenta que usar: o que ela faz quando algo está faltando?

Anexos que nunca foram baixados localmente, e conteúdos privados da Apple que não podem ser decodificados, são ambos normais. Uma ferramenta que os relata como avisos explícitos deixa você saber o que tem. Uma que os descarta em silêncio deixa você com um álbum que parece completo e não é, e você só vai descobrir no dia em que for procurar uma foto específica.

Confira as contagens também. Se uma ferramenta informa quantas mensagens leu da origem e quantas escreveu na saída, esses dois números deveriam bater, ou a diferença deveria estar explicada.

O que fazer com o álbum depois

Um álbum que existe em um lugar só não está salvo, está apenas encaminhado. Copie-o para outro lugar: um disco externo, outra máquina, ou o armazenamento em nuvem que preferir. Como uma boa exportação é uma pasta comum de arquivos comuns, isso é só copiar uma pasta.

Se a sua exportação inclui somas de verificação, guarde o manifesto junto. É a única coisa que permite confirmar, daqui a cinco anos, que a cópia que você está vendo está intacta.