Разбор таблиц из PDF на PHP

Слава Шевцов
На сайте с 23.07.2005
Offline
370
1243

Кто наталкивался на разбор таблиц из PDF? Например, есть документ, нужно на PHP вытащить из него все таблицы и сконвертировать из в csv формат.

Неизменность точки зрения неизменно порождает иллюзию понимания.
sabotage
На сайте с 14.02.2007
Offline
192
#1

Слава, если это идеальные таблицы, то будет просто очень сложно. Имхо.

По сути данные в таблице pdf размещены так:

 

00:00 - 00:59 6,012 734 122 66,244

01:00 - 01:59 4,903 720 103 36,385

02:00 - 02:59 4,68 707 93 48,539

03:00 - 03:59 3,318 569 54 37,648

04:00 - 04:59 2,759 466 42 37,831

05:00 - 05:59 1,523 233 27 10,846

06:00 - 06:59 1,577 287 26 15,303

07:00 - 07:59 673 139 20 4,639

08:00 - 08:59 1,056 164 33 7,284

09:00 - 09:59 2,091 308 41 20,516

10:00 - 10:59 2,766 391 70 27,054

11:00 - 11:59 4,498 559 91 44,486

12:00 - 12:59 6,169 1,028 124 53,862

13:00 - 13:59 6,387 749 122 48,64

14:00 - 14:59 8,526 1,185 126 59,755

15:00 - 15:59 7,526 954 131 84,982

16:00 - 16:59 7,312 841 157 45,425

17:00 - 17:59 7,558 863 145 49,644

18:00 - 18:59 10,197 3,161 130 91,267

19:00 - 19:59 9,664 1,321 145 88,33

20:00 - 20:59 7,878 830 169 53,129

21:00 - 21:59 7,254 930 126 56,294

22:00 - 22:59 7,086 873 135 79,086

23:00 - 23:59 6,641 848 140 70,361

Всего 128,054 18,86 2,372 1,137,563

Каждое число имеет свои координаты. Правильная таблица (как эта) еще может претендовать на что-то, но платежки в базу я бы не стал таким макаром парсить ;)

Слава Шевцов
На сайте с 23.07.2005
Offline
370
#2

Мне что-нибудь простенькое надо - прайс-листы разбирать.

юни
На сайте с 01.11.2005
Offline
935
#3
Слава Шевцов:
Мне что-нибудь простенькое надо - прайс-листы разбирать.

Барин, тут локального-то конвертера, днём с адронным коллайдером наперевес не сыщешь, а ты хочешь отлаженные, чистые и умытые библиотеки найти... легче упиццо кефиром до этил-эфир-фталатовых откровений.

Также ИМХО. :)

https://searchengines.guru/ru/forum/944108 - прокси-сервис на базе операторов домашнего интернета, сотни тысяч IP-адресов, канал от 20 Мбит
Слава Шевцов
На сайте с 23.07.2005
Offline
370
#4
юни:
Барин, тут локального-то конвертера, днём с адронным коллайдером наперевес не сыщешь, а ты хочешь отлаженные, чистые и умытые библиотеки найти... легче упиццо кефиром до этил-эфир-фталатовых откровений.

Не, ну для Excel нашёл же, да и из HTML-страничек прайсы научился опознавать и выдирать. Так что может кто видел... В Гугле долго искал - не нашёл 🙄

юни
На сайте с 01.11.2005
Offline
935
#5
Слава Шевцов:
Не, ну для Excel нашёл же, да и из HTML-страничек прайсы научился опознавать и выдирать.

Щастливец. :) Видать, и впрямь простые файлы у тя. Но PDF - зело труднее.

Скриптовые варианты я видел в том году где-то, в буржунете. Пошукал по форуму (и в админской среде) программёров, и решил плюнуть на это дело, после пятка-другого разговоров. Слюною прям. :)

Хотя, может сейчас всё по другому уже.

sabotage
На сайте с 14.02.2007
Offline
192
#6
Слава Шевцов:
да и из HTML-страничек прайсы научился опознавать и выдирать.

Сравнил тоже. В html разметка, а тут фиг с постным маслом. В excel да, пару софтин переводят нормально... нормальные таблицы.

V2
На сайте с 20.01.2005
Offline
102
#7

А зачем в PHP, а потом в csv?

Кажется где-то встречал из pdf в txt,

или даже в xls.

С уважением Владимир - VF Покупаю (ссылки) главные, внутренние и сквозные сайтов промышленных компаний.
sabotage
На сайте с 14.02.2007
Offline
192
#8
vf2005:
А зачем в PHP, а потом в csv?

o0 ога, дизассемблируй сразу!

Слава Шевцов
На сайте с 23.07.2005
Offline
370
#9
vf2005:
А зачем в PHP, а потом в csv?

Системный подход учит нас брать разные типы файлов и первым делом приводить к одному типу. Тому, который наиболее удобен для быстрого разбора с минимумом потребляемой памяти и упрощённой отладкой. Например, к файлу в csv формате. А дальше, получив данные в нужном формате, делать с ними, что Богу надобно. Таково Дао архитектора больших систем.

Слава Шевцов добавил 22.09.2008 в 00:23

sabotage:
Каждое число имеет свои координаты. Правильная таблица (как эта) еще может претендовать на что-то, но платежки в базу я бы не стал таким макаром парсить

Платёжки - это святое. У меня целостность и корректность всех данных не критична.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий