Ferramentas para extrair texto do powerpoint pptx no linux?

6

Existe alguma ferramenta linux que irá extrair o texto de um arquivo powerpoint pptx? Eu tentei catppt mas apenas retorna file.pptx is not OLE file or Error . abiword --to=txt file.pptx também retorna um arquivo de texto vazio.

Eu posso abrir o arquivo no libreoffice mas ele não parece ter uma opção "exportar como texto". Como suposição, também tentei libreoffice --headless --convert-to txt:Text file.pptx , mas isso nem sequer retorna um arquivo vazio.

    
por felix 17.10.2013 / 18:55

5 respostas

11

Se você puder processar os arquivos em bash , este one-liner irá descompactar todo o texto:

unzip -qc "$1" ppt/slides/slide*.xml | grep -oP '(?<=\<a:t\>).*?(?=\</a:t\>)'

Apenas passe o arquivo pptx como $1 e ele gravará o texto no arquivo $2 . O conteúdo de cada slide não aparecerá na ordem de apresentação, e não haverá rótulos nem nada, então você precisará de mais algumas linhas de script e um diretório temporário para obter uma lista mais legível.

    
por 24.01.2014 / 23:29
2

Como você tem o Abiword instalado, basta criar um PDF primeiro

libreoffice --headless --convert-to pdf filename.pptx

E então use o abiword para converter o pdf para txt

abiword --to=txt filename.pdf 
    
por 21.07.2014 / 19:53
1

Se você adicionar .zip ao final do nome do arquivo (por exemplo,Presentation1.pptx.zip), poderá descompactar o documento e visualizar seus componentes individuais.

Neste arquivo zip resultante, há o seguinte diretório \Presentation1.pptx.zip\ppt\slides . Isso contém arquivos .xml nomeados após cada slide individual. Se você abrir um desses arquivos, verá que qualquer texto digitado é agrupado em <a:t> tags.

Por exemplo: <a:t>TEST</a:t>

Isso é o máximo que posso ajudá-lo, mas espero que seja o suficiente.

EDIT: Como uma nota lateral, o mesmo processo também funciona para documentos do Word. É bastante útil se você precisar extrair imagens de um documento do Word.

    
por 18.10.2013 / 03:57
0

Você pode tentar salvar o arquivo ppt em formato pdf e usar o pdftotext para recuperar o texto existente. Naturalmente, todo o texto embutido nas figuras é perdido para sempre.

Alternativamente, você pode tentar o comando

 string filename

no ppt ou no pdf.

    
por 19.10.2013 / 17:06
0

Se você tiver o node.js em sua máquina, o link poderá fazê-lo.

    
por 30.12.2016 / 22:09