Como extrair texto de pdf em script no Linux?

23

No Linux - Como extrair texto de um .pdftexto em que realmente é texto, não uma imagem digitalizada? Eu quero algo que eu possa usar na linha de comando / em um script, não de maneira interativa. (Não desejo converter .tife usar o OCR - o texto já está disponível no .pdfarquivo. Por que introduzir imprecisões no OCR imperfeito?)

RobM
fonte

Respostas:

25

pdftotext que acompanha o poppler tentará extrair qualquer texto encontrado no PDF.

Ignacio Vazquez-Abrams
fonte
1
Obrigado pela sua resposta rápida, Ignacio! Eu já estava checando o pdftotext que vem em w xpdf (de foolabs.com) - sua resposta me levou a dar outra olhada, e consegui funcionar. O Poppler parece ter evoluído do xpdf, então vou dar uma olhada nisso também. Obrigado novamente!
RobM
9

A resposta de Ignacio está ótima. Na verdade, seria a primeira coisa na minha lista. Bem, isso e talvez sugerir a pdftohtmlferramenta que também vem com o poppler, combinada com o pdfreflow, se você quiser remontar o texto em parágrafos, etc. de várias maneiras.)

Aqui estão algumas outras opções também.

A ebook-convertferramenta de linha de comando do Caliber , que pode converter .PDFs em texto sem formatação (ou RTF ou em vários formatos de e-books, como ePub, etc.)

pdftxtextractde Podofo

O Abiword pode ser chamado a partir da linha de comando para converter entre quaisquer formatos que ele possa inserir de / exportar para e, com o plug-in de importação apropriado, isso inclui PDFs:

abiword --to=txt file.pdf

(Para ser justo, acho que o AbiWord e o calibre usam as bibliotecas poppler, mas não sou positivo.)

frabjous
fonte
Obrigado frabjous! Nesse caso, estou apenas extraindo o texto para que possa procurar por seqüências específicas (nomes de fornecedores, números de contas) e padrões (números e datas da fatura) - para que não seja necessário reformatá-lo ou exibi-lo novamente. Agradeço a confirmação e as alternativas - e tenho certeza que os outros também! - Rob
RobM