
Tenho milhares de PDFs científicos que preciso renomear, muitos não possuem metadados. Gostaria de poder criar uma ação de automação que pudesse abrir uma pasta e depois abrir cada PDF, copiar o título e renomear o documento e salvar em uma nova pasta. Passei horas tentando descobrir isso, então agradeceria muito a ajuda. Eu tenho Apple G5 2.26Gz quad rodando os10.6 Obrigado!
Responder1
HáMendeley, uma ferramenta de pesquisa online que permite gerenciar publicações científicas.
Possui uma ferramenta Mendeley Desktop onde você pode arrastar e soltar PDFs. Mendeley analisará automaticamente os autores e títulos dos PDFs.
Em seguida, você pode renomear o arquivo clicando com o botão direito e "Renomear arquivos de documentos...". Você também pode renomear vários arquivos de uma vez.
Está disponível para Windows e OS X.
Responder2
Se eu entendi você corretamente, você deseja extrair o título do artigo que está presente na primeira página do PDF (geralmente em letras maiores que o resumo e o texto seguinte) e usá-lo como nome do arquivo.
Receio que você provavelmentenão encontrará uma solução única para todos, uma vez que pode haver quantidades variadas de texto sem título no início do PDF, dificultando a extração do título real de PDFs provenientes de diferentes periódicos.
PARA obter uma solução que funcione para uma determinada porcentagem dos seus PDFs,eu provavelmente iria
- use pdf2ps e ps2ascii do Ghostscriptpara extrair texto simples do PDF
- analisar este texto simples para o título de um periódico em algum lugar no primeiro kilobyte ou mais
- dependendo do periódico, tente criar uma heurística que extraia o título do artigo do texto simples.
É claro que se você encontrar uma ferramenta que possa extrair o tamanho relativo do texto, bem como o texto simples de um PDF, isso provavelmente também ajudaria muito.
Boa sorte - seria interessante ver se você encontra uma maneira de automatizar isso! A principal coisa que faço quando faço download de artigos é nomeá-los de forma sistemática, mas com certeza seria ótimo ter algo para fazer isso depois...
Responder3
Se você não quiser usar software externo e quiser escrever seu próprio script, tente abrir seus PDFs como texto simples com um editor de texto e procure padrões. Pesquise a palavra-chave ‘título’ ou pesquise palavras no título e veja onde elas aparecem.
Para dar alguns exemplos (revistas científicas em química):
ACS (American Chemical Society): o título aparece entre colchetes após a segunda ocorrência da palavra-chave '/title'
Publicação Wiley: o título aparece entre colchetes após a primeira (e única) ocorrência da palavra-chave '/Título'
Publicação Rsc: não possui título em texto simples.
Springer: parece depender da revista
Como a maioria dos diários que leio são de Wiley ou Acs, a situação pareceria bastante boa para mim.
Este poderia ser um plano: 1. estudar PDFs das editoras das quais você lê periódicos com mais frequência 2. escolher aqueles que têm o título em texto simples. isso não deve ser um problema, pois todos incluem seus nomes nos últimos Kbytes do pdf. 3. gerencie-os com um script
Dependendo de quantos periódicos você lê usam a tag de título para o título do artigo, isso pode ser útil ou não.
Uma abordagem mais geral seria: pdf->text->parse text Você poderia começar aqui: https://stackoverflow.com/questions/25665/python-module-for-converting-pdf-to-text
Responder4
Existe um módulo Pythonpdftitle · PyPIque extrai o título.
Uso:
$ pdftitle -p 1506.01186.pdf --replace-missing-char ' '
Cyclical Learning Rates for Training Neural Networks
É recomendado usar --replace-missing-char
a opção, caso contrário ela poderá travar, por exemplo,https://arxiv.org/pdf/1506.01186.pdf. Como os caracteres ausentes tendem a não estar no título, isso não afetará a qualidade do resultado.
Dado o título, deve ser muito fácil escrever um script para renomear em lote.
Links para perguntas relacionadas: