У меня есть тысячи научных PDF-файлов, которые мне нужно переименовать, у многих нет метаданных. Я хотел бы иметь возможность создать действие automator, которое может открыть папку, затем открыть каждый PDF, скопировать заголовок и переименовать документ и сохранить в новой папке. Я потратил часы, пытаясь понять это, поэтому я был бы очень признателен за помощь. У меня Apple G5 2.26Gz Quad работает os10.6 Спасибо!
3 ответа
Существует Mendeley, онлайн-инструмент для исследований, который позволяет вам управлять научными публикациями.
Он имеет инструмент Mendeley Desktop, где вы можете перетаскивать PDF-файлы. Mendeley автоматически проанализирует авторов и заголовки из PDF-файлов.
Затем вы можете переименовать файл, щелкнув правой кнопкой мыши и «Переименовать файлы документов ...». Вы также можете переименовать несколько файлов одновременно.
Это доступно для Windows и OS X.
Если вы не хотите использовать внешнее программное обеспечение и хотите написать собственный скрипт, попробуйте открыть PDF-файлы в виде простого текста в текстовом редакторе, а затем поищите шаблоны. Либо выполните поиск по ключевому слову «title», либо поищите слова в заголовке и посмотрите, где они появляются.
Вот несколько примеров (научные журналы по химии):
ACS (Американское химическое общество): название появляется в скобках после второго вхождения ключевого слова '/title'
Публикация Wiley: заголовок появляется в скобках после первого (и единственного) вхождения ключевого слова '/Title'
Rsc издательство: не имеет заголовка в виде обычного текста.
Springer: похоже, это зависит от журнала
Поскольку большинство журналов, которые я читаю, принадлежат Уайли или ACS, ситуация выглядела бы неплохо для меня.
Это может быть план:1. изучить PDF-файлы издателей, из которых вы чаще всего читаете журналы; 2. выбрать те, которые имеют заголовок в виде обычного текста. это не должно быть проблемой, так как все они включают свое имя в последние килобайты PDF-файла.
В зависимости от того, сколько журналов вы прочитали, используйте тег заголовка для заголовка статьи, это может быть полезно или нет.
Более общим подходом было бы: pdf-> text-> parse text. Вы можете начать здесь: https://stackoverflow.com/questions/25665/python-module-for-converting-pdf-to-text
Если я вас правильно понимаю, вы хотите извлечь заголовок бумаги, который присутствует на первой странице PDF (обычно более крупным шрифтом, чем реферат и следующий текст), и использовать его в качестве имени файла.
Боюсь, что вы, вероятно , не найдете универсального решения, так как в начале PDF-файла может быть разное количество текста без заголовка, что затрудняет извлечение фактического заголовка для PDF-файлов из разных журналы.
Чтобы получить решение, которое работает для определенного процента ваших PDF-файлов, я бы, вероятно,
- использовать Ghostscript pdf2ps и ps2ascii для извлечения простого текста из PDF
- проанализируйте этот простой текст для заголовка журнала где-то в первом килобайте или около того
- в зависимости от журнала попробуйте придумать эвристическое извлечение названия статьи из открытого текста.
Конечно, если вы можете найти инструмент, который может извлечь относительный размер текста, а также обычный текст из PDF, это, вероятно, также очень поможет.
Удачи - было бы интересно посмотреть, если вы найдете способ автоматизировать это! Главное, что я делаю, когда загружаю статьи, - это систематически их называю, но было бы здорово, если бы потом было что-то для этого ...