Hvernig á að umbreyta töflum úr PDF í Excel eða CSV með Tabula

Sendu og umbreyttu pdf yfir í csv og skara fram úr

Þegar ég lít á söguleg gögn sem veðurathugunarstöð í borg minni býður upp á sé ég það þeir bjóða þær aðeins myndrænt og til niðurhals sem PDF. Ég skil ekki af hverju þeir láta þig ekki hlaða þeim niður í csv, sem væri mun gagnlegra fyrir alla.

Svo ég hef verið að leita að einum lausn til að koma þessum töflum frá pdf yfir á csv eða ef einhver vill sníða Excel eða Libre Office. Mér líkar við csv vegna þess að með csv gerirðu allt sem þú getur höndlað það með python og bókasöfnum þess eða þú getur auðveldlega flutt það inn í hvaða töflureikni sem er.

Þar sem hugmyndin er að ná sjálfvirku ferli, það sem ég vil er handrit til að vinna með Python og það er þar sem Tabula kemur inn.

Umbreyta pdf í csv með Tabula

Skrefin og aðgerðin er mjög einföld. Það fyrsta verður settu upp Tabula bókasafnið í þróunarumhverfi okkar. Tabula gerir okkur kleift að draga úr gögnum úr töflum í PDF í Pandas dataframes, Python bókasafnið bjartsýni til að vinna með csv og fylki.

Það gerir það líka draga og umbreyta á milli PDF, JSON, CSV og TSV. Gimsteinn. Þú getur fundið miklu meiri upplýsingar í henni github geymsla

Gerast áskrifandi að póstlista okkar

Ég nýti mér alla vinnu fyrri daga og set hana upp í Anaconda. Í krækjunni er hægt að sjá hvernig setja Anaconda.

Við setjum upp Tabula

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

Þegar ég keyrði það, það gaf mér villu

lausnin eins og fram kemur í skjölum þeirra var að fjarlægja gömlu útgáfuna af Tabula og setja upp nýja.

pip uninstall tabula
pip install tabula-py

Við búum til keyranlegu .py

lestu töflur frá pdf til csv

Ég bý til keyranlegu .py sem ég kalla pdftocsv.py ég set það í Downloads / eltiempo möppuna mína og það er skrá með eftirfarandi kóða

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-skjalið sem á að lesa heitir inforatge.pdf og ég segi því að framleiðslan sé kölluð out.csv og hún verði áfram í möppunni sem við erum að vinna í.

Við förum í skráasafnið þar sem við höfum bæði keyrsluna og pdf-skjalið sem við viljum umbreyta. Það er mikilvægt vegna þess að ef það segir okkur að það finni ekki skrána.

cd Descargas/eltiempo

Í þessari skrá erum við með PDF, .py skrána sem við höfum búið til og þar mun hún skila csv sem við viljum.

Við framkvæmum kóðann

python pdftocsv.py

Takið eftir að ég hef notað python, það er að segja ég að keyra það með python 2 en ekki með python3 sem mistekst. Og það er það ef það skilar engum villum, við höfum það nú þegar.

rekið Tabula í Anaconda þróunarumhverfi okkar

Við höfum bætt við 3 fleiri línum í skrána til að stjórna keyrslutíma. í lokin höfum við skilið pdftocsv.py skrána okkar sem

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))

Fleiri valkostir frá Tabula

Fleiri dæmi um hluti sem við getum gert. Það eru margir möguleikar, það er best að fara í gegnum opinberu Github geymsluna sem ég á eftir

# 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")

Og án efa einn gagnlegasti hluturinn til að umbreyta öllum PDF, JSON osfrv skrám í skrá.

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

Með þessu getum við sjálfvirkt verkefni sem annars væru löng og leiðinleg. Að lokum er þetta ein af ástæðunum fyrir notkun þessa bókasafns.

Umbreyta pdf til að skara framúr á netinu

Ef það sem við viljum er einfaldlega að umbreyta skrá, draga gögnin úr töflunni úr PDF í Excel, Librecalc eða álíka, þá er ekki nauðsynlegt að flækja það svo mikið. Það eru verkfæri í boði til að gera þetta, sum til að setja upp og önnur til að vinna verkið á netinu.

Ég hef prófað þessi tvö netverkfæri og þau virka mjög vel.

Hafðu í huga að þetta er ekki sjálfvirkt starf og þess vegna hefur rannsókn á þessum verkfærum ekki verið tæmandi. Ég geri aðeins athugasemdir við þær fyrir þá sem geta haft áhuga.

Klassíska aðferðin

Og við erum alltaf með klassísku aðferðina, slæmustu og dýrustu en á endanum er það valkostur ef lítið er um vinnu.

Afritaðu töflufrumurnar af pdf og límdu þær í töflureikninn okkar.

Skildu eftir athugasemd