Табулатура менен таблицаларды PDFтен Excelге же CSVге кантип которсо болот

Pass жана pdf файлын CSV жана Excelге айландырыңыз

Менин шаарымдагы метеорологиялык обсерватория сунуш кылган тарыхый маалыматтарга көз чаптырсам, ошону байкадым аларды графикалык түрдө жана PDF түрүндө жүктөө үчүн гана сунушташат. Эмне үчүн аларды CSV файлына жүктөөгө уруксат бербей жаткандыгын түшүнбөйм, бул баарына пайдалуураак болот.

Ошентип, мен аны издеп жүрдүм Бул таблицаларды pdf дан CSVге өткөрүү же эгер кимдир бирөө Excel же Libre Office форматташтыргысы келсе. CSV мага жагат, анткени csv менен сиз аны колдоно турган бардык нерсени python жана анын китепканалары менен жасай аласыз же каалаган таблицага оңой эле импорттой аласыз.

Автоматташтырылган процессти ишке ашыруу идеясы болгондуктан, мен каалаган нерсе - Python менен иштөө үчүн сценарий жана ушул жерден Табула келет.

Pdf файлын CSV файлына Табула менен которуңуз

Кадамдар жана иштөө абдан жөнөкөй. Биринчиси болот биздин өнүгүү чөйрөсүндө Табула китепканасын орнотуу. Табула бизге PDF'теги таблицалардан CSS жана массивдер менен иштөө үчүн оптималдаштырылган Python китепканасынын Pandas даталар алкагына чыгарууга мүмкүндүк берет.

Бул дагы мүмкүнчүлүк берет чыгарып, PDF, JSON, CSV жана TSV ортосунда айландырыңыз. Бир асыл. Андан дагы көбүрөөк маалымат таба аласыз github кампасы

Мурунку күндөрдөгү бардык жумуштарды пайдаланып, Анакондага орнотуп жатам. Шилтемеден кантип көрө аласыз Anaconda орнотуу.

Табуланы орнотобуз

#primero activamos nuestro entorno de desarrollo en nuestro caso sería conda activate comparador
pip install tabula-py

Аны аткарууда мага ката кетти

алардын документтеринде көрсөтүлгөн чечим Табуланын эски версиясын чыгарып, жаңысын орнотуу болгон.

pip uninstall tabula
pip install tabula-py

Аткарылуучу .py түзөбүз

pdf ден csv чейин таблицаларды окуу

Мен pdftocsv.py деп аталган аткарылуучу .py программасын түзүп, аны Жүктөө / eltiempo папкама салып, ал төмөнкү код менен файл болуп саналат

import tabula
# Extaer los datos del pdf al DataFrame
df = tabula.read_pdf("inforatge.pdf")
# lo convierte en un csv llamdo out.csv codificado con utf-8
df.to_csv('out.csv', sep='\t', encoding='utf-8')

Окула турган pdf inforatge.pdf деп аталып, анын чыгышы out.csv деп аталып, ал биз иштеп жаткан папкада кала тургандыгын айтам.

Аткарылуучу жана pdf файлдарын камтыган каталогго киребиз. Маанилүү, анткени эгер ал бизге файлды таба албай тургандыгын айтса.

cd Descargas/eltiempo

Бул каталогдо бизде PDF, .py файлы бар жана ал жерде биз каалаган CSV кайтарылат.

Биз кодду аткарабыз

python pdftocsv.py

Python колдонгонума көңүл буруңуз, башкача айтканда, python2 менен эмес, python 3 менен иштетүү керек деп айтам. Эгер ал кандайдыр бир ката кетирбесе, анда бизде бар.

биздин Анаконда өнүгүү чөйрөсүндө Табуланы иштетүү

Иштөө убактысын көзөмөлдөө үчүн файлга дагы 3 сап коштук. аягында биз pdftocsv.py файлын калтырдык

import tabula
import time

start_time = time.time()

df = tabula.read_pdf("inforatge.pdf")
df.to_csv('out.csv', sep='\t', encoding='utf-8')

print("--- %s seconds ---" % (time.time() - start_time))

Табуладан башка параметрлер

Биздин колубуздан келген нерселердин дагы көптөгөн мисалдары. Көптөгөн варианттар бар, эң жакшысы мен калтырган Github расмий кампасынан өтүү керек

# Leer PDF remotos y convertirlos en DataFrame
df2 = tabula.read_pdf("https://github.com/tabulapdf/tabula-java/raw/master/src/test/resources/technology/tabula/arabic.pdf")

# Convertir un PDF en CSV
tabula.convert_into("test.pdf", "output.csv", output_format="csv")

Жана каталогдогу бардык PDF, JSON ж.б. файлдарды конверттөө үчүн эң пайдалуу нерселердин бири экени талашсыз.

tabula.convert_into_by_batch("input_directory", output_format='csv')

Муну менен биз башкача айтканда узак жана түйшүктүү боло турган тапшырмаларды автоматташтыра алабыз. Акыры, бул ушул китепкананы пайдалануунун бирден-бир себеби.

Онлайн режиминде Excel файлын которуу

Эгерде биз каалаган нерсе - файлды которуу, таблицадан PDFтен Excel, Librecalc же ушул сыяктуу нерселерди чыгаруу, анда аны ушунчалык татаалдаштыруунун кажети жок. Муну жасоого, айрымдарын орнотууга, ал эми айрымдарынын ишин онлайн режиминде бүтүрүүгө шаймандар бар.

Мен ушул эки онлайн куралды колдонуп көрдүм, алар абдан жакшы иштешет.

Бул автоматташтырылган иш эмес экендигин жана ушул себептен бул куралдарды изилдөө аягына чыккан жок экендигин унутпаңыз. Мен аларга кызыккан адамдар үчүн гана комментарий берем.

Классикалык ыкма

Бизде ар дайым классикалык ыкма колдонулат, эң шалаакы жана кымбат, бирок иш аз болсо, акыры бул мүмкүнчүлүк.

Pdf-тен таблицанын уячаларын көчүрүп, биздин таблицага чаптаңыз.

Эгерде сиз биз сыяктуу тынчыбаган адам болсоңуз жана долбоордун оңдоп-түзөөсүнө жана жакшыртуусуна кызматташууну кааласаңыз, кайрымдуулук кыла аласыз. Бардык акча эксперимент жана окуу куралдары үчүн китептерди жана материалдарды сатып алууга кетет

Комментарий калтыруу