Já aconteceu com todos nós. Depois de uma busca árdua, você finalmente conseguiu ter acesso aos dados que precisa. Mas a felicidade dura pouco: eles estão em PDF.
Apesar de popular, o formato PDF costuma dar dor de cabeça para quem trabalha com dados. Arquivos assim são bons para leitura humana ou impressão, mas se você precisa editar o documento ou automatizar processos com os dados contidos nele, então eles podem ser um problema.
O Portable Document Format – o famoso PDF – foi criado pela Adobe nos anos 1990 de forma proprietária, sendo posteriormente lançado como um padrão aberto. Mas atenção: apesar do formato PDF ser padronizado de forma aberta no ISO 32000-1:2008, isto não quer dizer que os dados dentro dos arquivos PDF sejam considerados ‘Dados Abertos’.
Se isso parece confuso para você, vale dar uma olhada no Guia de Dados Abertos da Open Knowledge. Lá explicamos o que são dados abertos e por que devemos usá-los, ao invés de optar por apresentar os dados em formatos como o PDF.
Colocando a mão na massa
Mas, se você abriu esse tutorial, seu interesse é resolver um problema mais prático: os dados só foram disponibilizados em PDF. E agora?
A primeira tentativa costuma ser apelar para a boa e velha função de copiar e colar.
Você seleciona a tabela desejada, mas ao colar em um editor de planilhas o resultado geralmente não é o imaginado. Os registros de uma coluna vão para outra, as informações das linhas se misturam e, na maioria das vezes, o trabalho de limpeza que a “colagem” demanda não compensa o tempo economizado no Ctrl+C Ctrl+V.
Isso quando o PDF não é, na verdade, uma foto disfarçada. Neste caso, o texto sequer será selecionável. Para reconhecer os caracteres que estão ali, o computador precisa lançar mão de uma técnica chamada Reconhecimento Ótico de Caracteres, mais conhecida pelo acrônimo em inglês OCR.
Enfim, infelizmente, não existe uma solução única ou perfeita para libertar dados em PDF. Por outro lado, há muitos softwares para lidar com isto. Alguns são pagos e com código fechado para Windows, e também há soluções gratuitas e em código aberto, que priorizamos neste tutorial.
Além desta introdução, temos tutoriais também sobre o funcionamento do Tabula, via interface gráfica ou linha de comando, e da Rows, uma solução baseada em Python. E, por fim, falaremos sobre como extrair dados de PDF escaneados usando técnicas de OCR.
Questões importantesPara saber a solução mais adequada para você, tente responder às seguintes perguntas Qual seu conhecimento técnico? Se você programa, existem bibliotecas em diversas linguagens para lidar com dados em PDF, como o PDFMiner, a Rows e o PyPDFOCR (Python) ou o PDFTools (R). Já se você prefere fazer tudo online, é possível também encontrar serviços pagos e gratuitos na Internet para libertar suas informações. Se você está em um algum nível intermediário, também dá para encontrar boas opções. Mencionaremos alguns destes softwares e serviços online a seguir. Qual o volume de dados que preciso converter? Basicamente, quanto menos dados, mais provável que uma solução online seja a sua melhor opção. Ou seja: se você precisa libertar dados de um PDF com pouquíssimas páginas (menos de 10, por exemplo), pode conseguir isto facilmente através de serviços freemium, ou seja, com planos gratuitos limitados. Mas se precisa lidar com vários dados ou automatizar processos, então, soluções offline ou bibliotecas em linguagens como Python ou R provavelmente serão as mais adequadas. Os PDFs possuem os dados em formato de texto ou como imagem? O primeiro caso costuma ocorrer geralmente quando o arquivo foi gerado através de um editor de documentos e exportado para PDF posteriormente. O segundo, quando trata-se de um documento escaneado. Se você tiver em mãos uma imagem precisará usar técnicas de OCR, acompanhe nossa série de tutoriais, pois teremos um post dedicado ao assunto. |
Antes de extrair os dados, o ideal é tratar os arquivos para ter melhores resultados. Por exemplo: se você precisar apenas de páginas específicas do PDF, você pode usar ferramentas como o pdftk, que permite juntar e dividir páginas de diferentes arquivos.
Serviços pagos
Existem ainda softwares proprietários e pagos, que não iremos cobrir a fundo neste tutorial, mas podem ser úteis, a depender das suas necessidades e conhecimentos técnicos. Nesta categoria, vale conferir o software da Adobe, que criou originalmente o formato PDF, e o Abby FineReader, que costuma ser elogiado e possui versão tanto online quanto para rodar localmente na sua máquina.
O Abby FineReader Online permite converter arquivos PDF e arquivos de imagem para documentos de texto e planilhas direto do seu navegador, sem precisar instalar nada. A desvantagem é que se trata de um serviço pago.
Caso você faça um registro no site, é possível converter até dez páginas de forma gratuita e mensalmente são adicionados créditos equivalentes à conversão de cinco páginas na sua conta, sem custo. Mas se você precisa mais que isso, então, vai ser preciso abrir a carteira para o usar o Abby. Outras alternativa onlines que valem ser conferidas são o Zamzar, o PDFTables e o Cometdocs, que também possui um plano gratuito limitado e outro pago.
Próximos tutoriais
Confira nosso guia completo, acessando os tutoriais a seguir:
Enquanto isso, se você possui dúvidas ou sugestões sobre o assunto, você pode enviar no nosso fórum aberto.