Como importar comentários do Facebook para o Disqus

Depois de alguns meses de estudos e pesquisas com outros colegas blogueiros, decidi trocar o sistema de comentários do site, saindo do plugin do Facebook para o Disqus. Mudar de tecnologia é bem fácil, mas como eu já imaginava, é na tarefa de importar comentários do Facebook para o Disqus que está o trabalho pesado e sujo.

Há pouquíssimos materiais sobre o procedimento (e os que existem estão em inglês), e foi por esse motivo que resolvi criar e compartilhar com você o meu próprio guia completo, detalhando cada etapa que tive que percorrer para concluir a missão.

Antes de começar, é importante que você já tenha o Disqus instalado no seu site, pois você irá precisar dele para obter os “locais” onde os comentários importados serão armazenados.

Capturando os comentários do Facebook

O Facebook bem que podia ter uma ferramenta para exportar todos os comentários feitos através de seu plugin para sites, mas ele não tem.

Felizmente, através do Graph API Explorer é possível obter todos os comentários feitos em cada post, para depois serem convertidos num arquivo que pode ser importado no Disqus.

O procedimento não é complexo, mas o chato é que ele deve ser feito uma vez para cada post (URL) do seu site.

Vamos a ele:

1. Acesse a ferramenta de moderação do Facebook e encontre um dos comentários do post do qual você deseja obter os comentários;

2. Clique na data de um comentário para abrir a página da discussão do post;

3. Na página da discussão do post, copie o identificador numérico da discussão do post (somente a primeira parte, antes do _);

4. Abra o Explorador da Graph API do Facebook, e antes de qualquer coisa, clique no botão Obter token para gerar um código de acesso aos dados;

5. No campo GET, cole o identificador numérico da discussão que você copiou no passo 3, seguido de /comments?limit=300 (mude o valor de “limit” de acordo com o número total de comentários que seu post tiver);

6. Clique em Enviar para que todos os comentários do post sejam carregados na janela;

7. Copie todo o conteúdo para o seu editor de texto e salve o arquivo com a extensão .json;

Eu uso o editor TextWrangler no Mac, mas para o Windows eu recomendo o NotePad++.

Para que os próximos passos ocorram sem problemas, é fundamental que no seu arquivo .json só haja um conteúdo por linha. Ou seja, se alguns comentários aparecerem com quebra de linha (como na imagem acima), você precisará removê-las, deixando tudo numa linha só:

Atualização: depois de mais alguns dias de estudos, descobri que é possível obter todos os comentários de vários posts de uma vez só, através do comando comments?ids=X,Y,Z, onde cada letra é um identificador numérico da discussão, separados por vírgulas.

Convertendo os dados para o formato do Disqus

O OpenRefine é a ferramenta gratuita de tratamento de dados que irá nos ajudar na tarefa de converter os dados gerados pelo Facebook no formato .json, para o formato WXR compatível com o Disqus.

Baixe e instale o aplicativo no seu computador, e siga o passos a seguir:

1. Abra o OpenRefine, e clique no botão Choose Files para abrir o arquivo .json que você gerou na etapa anterior. Depois clique no botão Next;

2. Clique duas vezes no primeiro bloco de dados do arquivo conforme a imagem abaixo, e observe todo o conteúdo sendo convertido para o formato tabela;

3. Agora clique em Create Project;

4. Na tela seguinte, clique na seta ao lado de All, depois em Edit columns, e finalmente em Re-order / remove columns;

5. Na janela que se abre, mova para a caixa direita as colunas que nós iremos remover do arquivo (dados do Facebook que não interessam para o Disqus), e reordene as colunas que vão ficar do lado esquerdo, de acordo com a imagem abaixo. Depois clique em OK;

Agora nós vamos renomear as colunas que restaram, para que fique mais fácil nosso trabalho à frente.

6. Clique na seta ao lado de All, depois em Edit column, e finalmente em Rename this column. Faça isso em cada uma das três colunas, renomeando-as assim: from-name > autor, created-time > data, message > mensagem.

7. Com tudo renomeado, clique em Export, depois em Templating;

Na janela que se abre, a coluna esquerda mostra a formatação que irá gerar o arquivo de saída do OpenRefine, e a direita uma pré-visualização de como ficará o resultado. O campo Prefix prevê o que vem antes dos dados, o campo Row Template lista os dados em si, e o campo Sufix mostra o que vem depois dos dados.

O campo Row Separator define o separador de dados, mas nós não vamos utilizá-lo nesse caso. Pode apagar a vírgula que está lá.

8. Eu já deixei um modelo de arquivo compatível com Disqus prontinho neste link, e agora basta você copiar cada bloco dele (separados por cor) nos campos do Open Refine, conforme imagem abaixo;

9. O bloco laranja vai para o campo Prefix, o bloco azul vai para o campo Row Template, e o bloco verde vai para o campo Sufix;

10. Com tudo no lugar certo, clique em Export, depois abra o arquivo .txt gerado no seu editor de texto, salvando-o em seguida no formato .xml;

11. Agora que você já tem o arquivo .xml com todos os seus comentários, é preciso atualizá-lo com as informações que irão “linká-los” com a caixa de comentários do seu post. Para isso, comece obtendo o identificador numérico que o Disqus exibe quando você passa o mouse pelo botão compartilhar da caixa de comentários do seu post;

12. Abra o arquivo .xml gerado na etapa anterior, e atualize a tag <dsq:thread_identifier> com o número que acaba de anotar;

13. Atualize também os campos <title> com o título do post, <link> com a URL do post, <content:encoded> com um texto resumo (ou introdução) do post (mas lembre-se que tem que estar tudo na mesma linha), e <wp:post_date_gmt> com a data de publicação do post. Tudo conforme a imagem abaixo;

14. Por fim, a parte mais ordinária desse tutorial: o Disqus exige um identificador numérico para cada comentário importado, e por isso você terá que colocar os números em ordem crescente, um a um, no arquivo .xml, dentro da tag <wp:comment_id> (eu pelo menos não conheço uma forma automática de fazer isso);

15. Além disso, é fundamental que você remova todas as aspas (“) e elementos extras de horário (+0000) do arquivo, mas para isso basta utilizar a função Procurar e Substituir do seu editor de texto.

Pronto! Agora o seu arquivo está prontinho para importação no Disqus, e tudo o que você precisa fazer é acessar a página da plataforma dedicada para esta função.

Clique no botão Choose File para carregar o arquivo .xml gerado depois de todo esse trabalho, aperte o Upload, e corra pro abraço!

Curtiu essa dica? Então compartilhe com seus amigos!

E se tiver alguma dúvida, deixe aí nos comentários.