Задать вопрос
@ostapinbox

Как преобразовать документ pdf в лист excel?

Как преобразовать документ pdf в лист excel? В PDF находится данные клиентов: пол, возраст, паспорт, телефон и т.д. Нужно написать программу, чтобы данные из этого pdf файла преобразовывались в excel таблицу в определенной последовательности и оставляя только нужную информацию.
  • Вопрос задан
  • 716 просмотров
Подписаться 3 Средний 3 комментария
Пригласить эксперта
Ответы на вопрос 3
@rPman
Анализ документа это не простой процесс, повезет, если структура у всех документов будет одинаковая, и машиночитаемая, тогда это легко будет автоматизировать, а вот если информация записана 'как получится', где порядок и способ записи отличается (например запись велась много времени и операторы менялись, каждый изобретал свой формат, один по 1 строке на данные название: значение, другой в одну строчку через запятую, трети написал сначала список названий значений, а затем список самих значений и т.п. или писать данные в колонках,.. вроде бы у каждого есть какой то порядок но везде разный). Помимо формата есть еще проблема с разными шрифтами и положениями элементов на странице, лишний текст на сопровождающих картинках и графиках и много нюансов.

В общем требуется исследование, которое тебе сначала придется провести.

У тебя 2 варианта решения (как повезет)
1. если текст в pdf записан как текст
разбираешь документ на элементы чтобы получить список текстовых строк с координатами (вот тут обсуждалось там же и пример)

2. если текст не содержится внутри документа и pdf исключительно как картинка (бывают разные случаи, в простом варианте - pdf как векторное изображение, грубо говоря команды принтеру/графопостроителю, бывает прямо изображение помещают, например после сканирования бумажных
то используй инструменты распознавания текстов на изображении, например открытый tesseract (его можно самому натренировать на шрифты, если будут использоваться необычные, в этом случае конечно вручную придется набирать символы из документа, подготавливать их в обучающую выборку... примеры в интернете есть, но скорее всего так глубоко лезть не придется)
Чтобы получить текст с координатами так же можно посмотреть пример тут
Осторожно с мультиязыковыми заморочками, одни и те же буквы в разных языках могут как совпадать по виду так и отличаться (разные шрифты), плюс распознавание может путать букву О и ноль, l и один и т.п.

Немного поковыряться, чтобы исключить разбиение текстов на буквы а предложения на слова (делать по координатам, если символ или слово находится справа на некотором расстоянии и на той же y координате (+-) то считать что они одно слово-предложение.

Проанализировав так всю базу документов ты сможешь уже работать с текстовыми данными, сгруппировать по форматам (искать слова на соответствующих позициях и порядке) и по каждой написать приложение парсер.

Каждое такое приложение будет примитивным, фактически для каждого формата в списке документов - свое.

p.s. вспоминаю историю, где начальство какой то организации потребовало распечатать тонны (буквально машину) бумаги, какие то документы... а в последствии в другой конторе пришла задача отсканировать всю эту кипу бумаг

желаю что бы у тебя было не так
Ответ написан
mayton2019
@mayton2019
Bigdata Engineer
Тяжелая задачка тебе прилетела. Я-бы вообще не советовал ее делать. Много ручной работы.
И эффективность решения сильно зависит от того как выглядит документ. Что там внутри?
Текст? Таблицы? Или сканированные фото.

По поводу парсинга pdf на python - вот был вопрос в стековер https://stackoverflow.com/questions/18755412/parse... можно начать с этого.
Ответ написан
Комментировать
@ijesusyt
Существует несколько различных способов преобразования документа PDF в электронную таблицу Excel:

Используйте инструмент для преобразования PDF в Excel. Существует множество онлайн-инструментов, которые могут автоматически конвертировать PDF-документы в электронные таблицы Excel. Эти инструменты обычно позволяют загрузить PDF-файл, а затем извлечь данные и преобразовать их в электронную таблицу Excel. Некоторые популярные варианты включают Adobe Acrobat, Nitro и Zamzar.

Используйте программное обеспечение со встроенным преобразованием PDF в Excel. Некоторые программы, такие как Adobe Acrobat и Microsoft Word, имеют встроенные функции, позволяющие преобразовывать PDF-файлы в электронные таблицы Excel. Эти инструменты обычно работают, открывая PDF-файл в программном обеспечении, а затем предоставляя возможность сохранить его в виде файла Excel.

Используйте стороннюю библиотеку. Если вы хотите создать программу для преобразования PDF-файлов в электронные таблицы Excel, вы можете использовать стороннюю библиотеку, такую ​​как Apache POI или iText. Эти библиотеки предоставляют API, позволяющие читать и записывать данные в различных форматах, включая PDF и Excel.

Чтобы извлечь из PDF-файла только необходимую информацию, вам потребуется написать код, который считывает данные PDF и анализирует их для извлечения соответствующей информации. Это, вероятно, потребует использования регулярных выражений или методов обработки строк для извлечения конкретных данных, которые вам нужны.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы