5

Я пытаюсь реализовать алгоритм, описанный в академической статье, которая у меня есть в формате PDF. Алгоритм включает в себя таблицу из 256 записей, которые я хочу скопировать в мою реализацию. Однако я не могу скопировать таблицу как текст, которым я могу манипулировать. Я могу только скопировать это как изображение.

Как я могу легко извлечь таблицу, не вводя ее?

6 ответов6

4
  1. Формат PDF с момента его создания (более 20 лет назад) никогда не предназначался для размещения извлекаемых, осмысленно структурированных данных.

  2. Его первоначальная цель состояла в том, чтобы быть надежным визуальным представлением текста, изображений и диаграмм в документе - своего рода цифровой бумаге (которая также будет надежно перенесена на реальную бумагу посредством печати). Только позже в его разработке были добавлены дополнительные функции, среди которых некоторые, которые должны помочь в извлечении данных снова (Google для Tagged PDF).

  3. Некоторые примеры проблем, возникающих при извлечении данных из таблиц PDF, см. В этой статье:

  4. Противоречие с моей точкой «1». выше, теперь я говорю это: для удивительного семейства инструментов, которые становятся все лучше и лучше от недели к неделе для извлечения табличных данных из PDF-файлов (если они не отсканированные страницы), смотрите эти ссылки:

Итак: иди ищи Табулу. Если какой-либо инструмент может делать то, что вы хотите, в настоящее время (через 4 года после того, как был задан этот вопрос), Tabula, вероятно, среди лучших для этой работы!


PS: Tabula - это свободное и открытое программное обеспечение, написанное на Ruby.

4

PDF2Table

Это дает это XML, я думаю.

Если мы путешествуем по Интернету, мы можем найти файлы PDF в кучах. Однажды технические детали удивительной пятимегапиксельной цифровой камеры, одна статистика о доходах предприятия за последние два года, и один раз блестящий криминальный роман сэра Артура Конан Дойла сохранен в файле PDF. Широкое использование этого формата файлов фокусируется на вопросе, как повторно использовать данные в таком файле. Многое уже сделано в этой области. Например, есть несколько инструментов, которые конвертируют PDF-файлы в другие форматы.

Моя работа сосредоточена только на извлечении табличной информации из PDF-файлов. Я искал инструменты, которые извлекают основную информацию из PDF-файлов. Я нашел инструмент с именем pdf2html, который также возвращает данные в формате XML. Для доступа к этому выводу XML я использовал архив JDOM.

Я разработал несколько эвристик для обнаружения и декомпозиции таблиц. Эти эвристики работают довольно хорошо на ясных таблицах (без охватывающих столбцов или строк) и довольно хорошо на сложных таблицах (с охватывающими строками или столбцами).

Ссылка на Sourceforge

3

Ваша проблема может быть в том, что он был вставлен в PDF как изображение оригинальным автором. Если это так (вы можете узнать это, посмотрев, будет ли другой текст в документе копироваться как текст), возможно, вам остается только скопировать его вручную (надеюсь, что вы можете коснуться шрифта) или использовать программное обеспечение OCR, которое поставляется со сканерами.

1

Я не пробовал это, но проект pdf2table может помочь.

0

Несвободное приложение PDF2XL и бесплатный PDF Mechanic могут одновременно извлекать табличные данные в CSV и Excel, в зависимости от точного форматирования таблицы.

0

Один из вариантов - сохранить документ (или просто страницу с нужной таблицей) в виде XML-файла. Я только что сделал это в Adobe Acrobrat Pro, сохранив его как "XML Spreadsheet 2003". Это сохранило табличный формат в результирующем XML-файле (для просмотра в Excel). Единственное "несовершенство" заключается в том, что каждая литеральная строка в таблице рассматривается как строка в файле Excel. Поэтому, если какой-либо текст разбивается на строки (например, длинные имена), он будет отображаться как две строки в Excel. Для маленького стола это довольно незначительная уборка.

Кроме этого, кажется, что этот процесс может быть автоматизирован.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .