Как извлечь таблицы из PDF в Excel: Сравнение 5 методов
PDF хранит таблицы как разрозненные фрагменты текста по координатам x,y — без строк, столбцов и ячеек. Вот как получить эти данные в электронную таблицу, от бесплатных веб-инструментов до скриптов Python.
У вас есть PDF-файл с таблицей, которая вам нужна в Excel. Возможно, это финансовый отчет, банковская выписка, счет-фактура или научная статья. Данные прямо там — аккуратно организованы в строки и столбцы на экране. Но когда вы пытаетесь их извлечь, все рассыпается.
Это происходит потому, что PDF — это не формат данных. Это формат отображения. В спецификации PDF нет понятия «таблица», «строка» или «столбец». То, что выглядит как структурированная таблица, на самом деле является десятками фрагментов текста, размещенных по определенным координатам x,y на холсте. Извлечение этой структуры обратно в электронную таблицу — это задача обратного инжиниринга, и разные инструменты справляются с ней с разной степенью успеха.
В этом руководстве рассматриваются 5 методов извлечения таблиц из PDF, когда каждый из них работает лучше всего и что делать, когда что-то идет не так.
Почему извлечение таблиц из PDF — это сложно
В формате PDF нет таблиц
Спецификация PDF (ISO 32000-2:2020) определяет поток содержимого — последовательность операторов, которые позиционируют отдельные символы по точным координатам. Простая строка таблицы, такая как «Дата | Описание | Сумма», может быть сохранена как:
BT /F1 10 Tf 72 650 Td (01/15/2026) Tj 200 0 Td (Office Supplies) Tj 180 0 Td (125.00) Tj ET
Нет тегов <table>, <tr> или <td>. Нет идентификаторов строк. Нет границ столбцов. Видимые линии вокруг ячеек — это отдельные операции рисования, полностью отключенные от текста. Инструмент извлечения должен выводить всю структуру из пространственных отношений.
Три типа границ таблиц
Таблицы с границами (сеткой) имеют видимые линии вокруг каждой ячейки. Их легче всего извлечь, поскольку линии явно определяют границы ячеек. Часто встречаются в официальных финансовых отчетах, государственных формах и стандартизированных отчетах.
Таблицы без границ (потоковые) не имеют линий вообще. Структура определяется исключительно выравниванием пробелов — текстовые элементы, имеющие одинаковые координаты x в разных строках, образуют подразумеваемые столбцы. Часто встречаются в научных статьях, счетах-фактурах и каталогах продукции.
Полуграничные таблицы имеют только частичные границы — обычно горизонтальные линии между разделами, но без вертикальных разделителей. Чрезвычайно распространены в банковских выписках, отчетах брокеров и счетах за коммунальные услуги. Их труднее всего извлечь, поскольку частичные границы вводят в заблуждение парсеры в режиме сетки, а отсутствие границ снижает уверенность в режиме потока.
Тегированные и нетегированные PDF
Тегированные PDF включают структурные метаданные, которые идентифицируют заголовки, абзацы и ячейки таблиц. Нетегированные PDF не имеют ничего из этого — инструмент извлечения получает только необработанные координаты. Подавляющее большинство PDF нетегированы, включая практически все банковские выписки, счета-фактуры и финансовые отчеты.
Метод 1: PDFSub Extract Tables (Бесплатно + AI-резерв)
Инструмент Extract Tables PDFSub использует трехуровневый подход, который максимизирует точность при минимизации затрат:
Уровень 1: Обнаружение на основе координат (браузер, бесплатно)
Инструмент сначала пытается извлечь данные полностью в вашем браузере:
- Анализирует поток содержимого PDF для извлечения каждого текстового элемента с его координатами x,y
- Группирует текстовые элементы в строки на основе близости координат y
- Анализирует закономерности выравнивания координат x в строках для определения границ столбцов
- Требуется минимум 3 строки, 2 столбца и 70%+ уверенности
Если найдены хорошие таблицы, вы сразу получаете структурированные данные — без загрузки на сервер, без потребления кредитов AI, и ваш файл никогда не покидает ваше устройство.
Уровень 2: Извлечение на стороне сервера (pdfplumber, бесплатно)
Если обнаружение на основе координат не находит таблиц, инструмент использует pdfplumber (лицензия MIT) на сервере. Он обнаруживает как явные линии (нарисованные границы), так и подразумеваемые линии (шаблоны выравнивания слов), находит пересечения, идентифицирует прямоугольники и сопоставляет текст с ячейками.
Уровень 3: Извлечение с помощью AI (использует кредиты)
Для отсканированных PDF, сложных макетов или таблиц, которые не могут быть разобраны методами на основе правил, инструмент использует извлечение с помощью AI-видения. Вы также можете включить опцию «Принудительное извлечение AI», чтобы перейти непосредственно к этому уровню, когда вы знаете, что таблица сложная.
Форматы вывода: Excel (.xlsx), CSV, JSON.
Лучше всего подходит для: Быстрого извлечения без установки программного обеспечения. Цифровые PDF обрабатываются полностью в вашем браузере для максимальной конфиденциальности.
Метод 2: Power Query в Excel (Только Windows)
Доступно в Excel 2019+ и Microsoft 365 на Windows: Данные → Получить данные → Из файла → Из PDF.
Как это работает
- Нажмите Данные → Получить данные → Из файла → Из PDF
- Выберите ваш PDF-файл
- Power Query отобразит панель навигатора со списком обнаруженных таблиц по страницам
- Выберите нужные таблицы, нажмите Преобразовать данные для очистки, затем Загрузить
Преимущества
- Встроен в Excel — без дополнительной платы для подписчиков Microsoft 365
- Движок преобразования Power Query хорошо справляется с постобработкой (заполнение вниз, сводные таблицы, слияние столбцов)
- Может обновлять данные, если исходный PDF обновлен
- Поддерживает подключение нескольких таблиц из одного PDF
Ограничения
- Только для Windows — недоступно в Excel для Mac, Excel Online или мобильных устройствах
- Плохо справляется с таблицами без границ — лучше всего работает с четко очерченными таблицами
- Нет OCR — не может извлекать данные из отсканированных PDF/PDF с изображениями
- Многостраничные таблицы проблематичны — каждая страница часто импортируется как отдельная таблица, требующая ручного объединения
- Многострочные ячейки — перенесенный текст в ячейках часто разбивается на несколько строк, требуя очистки
Лучше всего подходит для: Пользователей Windows с Microsoft 365, у которых есть простые таблицы с границами.
Метод 3: Adobe Acrobat (Платно)
Файл → Экспортировать PDF → Электронная таблица → Рабочая книга Microsoft Excel
Цены (2026)
- Acrobat Standard: 12,99 $/месяц (годовой план)
- Acrobat Pro: 19,99 $/месяц (годовой план)
- Export PDF (отдельно): план более низкого уровня только для конвертации
Преимущества
- Встроенный OCR для отсканированных документов
- Обычно сохраняет форматирование для простых таблиц с границами
- Пакетная обработка доступна в Pro
Ограничения
- Дорого для одного только извлечения таблиц — 156–240 $/год
- Сложные таблицы со объединенными ячейками и многостраничными данными все равно дают некорректный вывод
- Файлы могут загружаться в облако Adobe для обработки — проблематично для конфиденциальных финансовых данных
- Требуется установка на рабочий стол
Лучше всего подходит для: Пользователей, которые уже платят за Acrobat Pro и нуждаются в периодическом экспорте таблиц с OCR.
Метод 4: Копирование-вставка (вручную)
Самый интуитивно понятный подход — и тот, который чаще всего терпит неудачу для таблиц.
Распространенные проблемы
- Все данные в одном столбце — вся таблица вставляется без разбиения на столбцы
- Числа становятся текстом — символы валюты, скобки и разделители нарушают числовое форматирование
- Многострочное содержимое ячейки создает фантомные строки — описание, которое переносится на две строки в ячейке, становится двумя отдельными строками
- Заголовки отделены от данных — строка заголовка отсоединяется
- Столбцы не выровнены — данные смещаются, потому что интервал между символами не преобразуется в табуляцию
Частичное решение
Вставьте в Excel, затем используйте Данные → Текст по столбцам с разделителем пробел или фиксированной шириной. Включите опцию «Считать последовательные разделители одним». Это работает для очень простых, хорошо расположенных таблиц, но не для чего-либо с многословным содержимым ячеек.
Лучше всего подходит для: Извлечения одной небольшой, простой таблицы в крайнем случае.
Метод 5: Библиотеки Python (Для разработчиков)
Три библиотеки с лицензией MIT обрабатывают извлечение таблиц из PDF программно:
Tabula-py
Оболочка Python для Tabula (Java). Требует среды выполнения Java.
- Режим сетки для таблиц с границами (находит линии и пересечения)
- Режим потока для таблиц без границ (использует выравнивание текста)
- Хорошо подходит для пакетной обработки в скриптах
- Нет поддержки OCR
Camelot
Также предлагает режимы сетки и потока.
- Обычно превосходит Tabula для таблиц с границами
- Режим потока имеет больше параметров конфигурации для точной настройки
- Предоставляет отчеты о точности при каждом извлечении
- Требует зависимости Ghostscript. Нет поддержки OCR
pdfplumber
Подход на основе координат: извлекает каждый символ с его точным положением, затем выводит структуру.
- Обрабатывает самый широкий спектр типов таблиц
- Обеспечивает наибольший контроль, но требует больше конфигурации
- Это библиотека, которую PDFSub использует на стороне сервера
- Нет поддержки OCR
Лучше всего подходит для: Разработчиков, автоматизирующих повторяющиеся рабочие процессы извлечения таблиц, обрабатывающих большие пакеты одинаковых документов.
Распространенные проблемы и как их решить
Объединенные ячейки
Когда ячейки охватывают несколько строк или столбцов, большинство инструментов либо помещают содержимое в верхнюю левую ячейку, оставляя остальные пустыми, либо смещают все последующие столбцы. Универсального решения нет — формат CSV не имеет концепции слияния, поэтому информация о слиянии всегда теряется.
Решение: Извлеките таблицу, затем вручную исправьте артефакты слияния в Excel. Для повторяющихся таблиц с одинаковым шаблоном слияния рассмотрите возможность постобработки скриптом.
Многострочное содержимое в ячейках
Длинные описания, которые переносятся в пределах ячейки, становятся несколькими строками в выводе, смещая все последующие данные. Это самая распространенная ошибка при извлечении финансовых документов.
Решение: После извлечения найдите строки, в которых отсутствуют даты и суммы — это, вероятно, строки продолжения, принадлежащие предыдущей строке. В Excel объедините их вручную или используйте вспомогательную формулу.
Таблицы, охватывающие несколько страниц
Инструменты должны определить, где продолжается таблица, следует ли удалять повторяющиеся заголовки и как фильтровать нижние колонтитулы страниц. Многие инструменты обрабатывают каждую страницу независимо.
Решение: Если ваш инструмент выдает результаты по страницам, объедините листы и удалите повторяющиеся строки заголовков. Убедитесь, что последняя строка на странице N правильно соединяется с первой строкой на странице N+1.
Проблемы с форматированием валюты
Отрицательные числа в скобках ((1,234.56)) вставляются как текст, а не числа. Символы валюты и разделители тысяч также нарушают числовое форматирование.
Решение: После извлечения выберите столбец суммы и используйте «Найти и заменить», чтобы удалить символы $, (, ). Затем отформатируйте столбец как Число. Для отрицательных чисел в скобках замените ( на - и удалите ), затем преобразуйте в числовой формат.
Неоднозначность дат
01/02/2026 — это 2 января или 1 февраля? Инструмент извлечения сохраняет строку как есть, но Excel может интерпретировать ее по-разному в зависимости от вашей локали.
Решение: Проверьте исходный PDF на наличие подсказок в формате даты (ищите даты со значениями дня > 12). Установите формат даты Excel, соответствующий источнику, перед импортом.
Сравнение точности
| Метод | Простая с границами | Без границ | Полуграничная | Отсканированные PDF |
|---|---|---|---|---|
| PDFSub (координаты + AI) | 90–99% | 75–95% | 70–95% | 85–95% (AI) |
| Power Query | 85–95% | 40–60% | 50–70% | Не поддерживается |
| Adobe Acrobat | 90–95% | 70–80% | 70–85% | 80–90% |
| Tabula | ~68% | 55–70% | 50–65% | Не поддерживается |
| Camelot | ~73% | 65–75% | 60–70% | Не поддерживается |
| Копирование-вставка | 30–50% | 10–30% | 10–30% | Невозможно |
Диапазоны отражают вариации в зависимости от сложности документа. Данные бенчмарков из 2025 Benchmark PDF Extraction от Procyons и сравнительных исследований Camelot.
Какой метод использовать?
| Сценарий | Лучший метод | Почему |
|---|---|---|
| Быстрое одноразовое извлечение | PDFSub | Без установки, в браузере, бесплатное извлечение по координатам |
| Простая таблица с границами, Windows | Power Query | Встроен в Excel, без дополнительной платы |
| Отсканированный PDF | PDFSub (AI) или Adobe Acrobat | Требуется функция OCR |
| Конфиденциальные финансовые данные | PDFSub | Обработка в браузере, файл никогда не загружается |
| Повторяющаяся пакетная обработка | Python (pdfplumber) | Возможность скриптования, автоматизация |
| Уже есть Acrobat Pro | Adobe Acrobat | Уже оплачено, простые таблицы работают хорошо |
| Одна небольшая таблица, без инструментов | Копирование-вставка | Крайний случай, проверять все |
Советы для лучших результатов
Используйте нативные PDF. Загружайте документы из их источника, а не сканируйте бумагу. Нативные PDF имеют идеальный текст, что значительно повышает точность извлечения.
Сначала определите тип таблицы. Таблицы с границами работают практически с любым инструментом. Таблицы без границ требуют режима потока или извлечения AI. Знание типа поможет вам выбрать правильный метод заранее.
Начните с бесплатных методов на основе правил. Сначала попробуйте извлечение на основе координат. Переходите к AI только тогда, когда методы на основе правил дают плохие результаты — это экономит время и кредиты.
Всегда проверяйте результат. Проверяйте количество строк, выравнивание столбцов, числовые значения и итоги. Никогда не доверяйте результатам извлечения слепо.
Обращайте внимание на форматирование чисел. После извлечения убедитесь, что числа действительно являются числами в Excel (выровнены по правому краю), а не текстовыми строками (выровнены по левому краю). Символы валюты и отрицательные числа в скобках — распространенные причины проблем.
Для конфиденциальных данных предпочитайте инструменты на основе браузера. Финансовые отчеты, банковские выписки и налоговые документы содержат конфиденциальную информацию. Инструменты, которые обрабатывают PDF в вашем браузере, никогда не загружают ваш файл, устраняя риск утечки данных.
Попробуйте бесплатно
Готовы извлечь таблицы из вашего PDF? Загрузите файл сейчас — PDFSub сначала пробует бесплатное извлечение на основе координат, с резервным вариантом AI для сложных таблиц. Цифровые PDF обрабатываются полностью в вашем браузере. Начните 7-дневную бесплатную пробную версию.