Kuinka muuntaa taulukot PDF: stä Exceliksi tai CSV: ksi Tabulan avulla

Siirrä ja muunna pdf csv: ksi ja exceliksi

Tarkastellessani kaupungin meteorologisen observatorion tarjoamia historiallisia tietoja näen sen ne tarjoavat niitä vain graafisesti ja ladattaviksi PDF-muodossa. En ymmärrä, miksi he eivät anna sinun ladata niitä csv-tiedostoon, mikä olisi paljon hyödyllisempää kaikille.

Joten olen etsinyt sitä ratkaisu siirtää nämä taulukot pdf: stä csv: hen tai jos joku haluaa alustaa Excelin tai Libre Officen. Pidän csv: stä, koska csv: llä voit tehdä kaiken mitä pystyt käsittelemään pythonilla ja sen kirjastoilla tai voit helposti tuoda sen mihin tahansa laskentataulukkoon.

Koska ajatuksena on saada automatisoitu prosessi, haluan komentosarjan toimivan Pythonin kanssa, ja tässä Tabula tulee sisään.

Muunna pdf csv: ksi Tabulan avulla

Vaiheet ja käyttö ovat hyvin yksinkertaisia. Ensimmäinen tulee olemaan asenna Tabula-kirjasto kehitysympäristöön. Tabula antaa meille mahdollisuuden poimia tietoja PDF-taulukoista Pandas-tietokehyksiin, Python-kirjastoon, joka on optimoitu työskentelemään csv: n ja taulukoiden kanssa.

Se myös sallii pura ja muuntaa PDF-, JSON-, CSV- ja TSV-tiedostojen välillä. Helmi. Löydät paljon enemmän tietoa sen github-arkisto

Hyödynnän kaikkia aikaisempien päivien töitä ja asennan ne Anacondaan. Linkistä näet miten asenna Anaconda.

Asennamme Tabulan

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

Suoritettaessa se antoi minulle virheen

heidän asiakirjoissaan mainittu ratkaisu oli poistaa vanha Tabula-versio ja asentaa uusi.

pip uninstall tabula
pip install tabula-py

Luomme suoritettavan .py-tiedoston

lue taulukot pdf: stä csv: hen

Luo suoritettava .py, jota kutsun pdftocsv.py, laitan sen Downloads / eltiempo-kansioon ja se on tiedosto, jolla on seuraava koodi

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

Luettavan pdf-tiedoston nimi on inforatge.pdf ja sanon sille, että lähtö kutsutaan out.csv-tiedostoksi ja se pysyy kansiossa, jossa työskentelemme.

Menemme hakemistoon, jossa meillä on sekä suoritettava tiedosto että muunnettava pdf-tiedosto. Se on tärkeää, koska jos se kertoo meille, että se ei löydä tiedostoa.

cd Descargas/eltiempo

Tässä hakemistossa on PDF, luomamme .py-tiedosto, ja se palauttaa haluamasi csv: n.

Suoritamme koodin

python pdftocsv.py

Huomaa, että olen käyttänyt pythonia, eli käsken sitä ajaa se python 2: lla eikä python3: lla, joka epäonnistuu. Ja se on, jos se ei palauta mitään virhettä, meillä on se jo.

aja Tabulaa Anacondan kehitysympäristössämme

Olemme lisänneet tiedostoon vielä 3 riviä ajon hallintaa varten. lopussa olemme jättäneet pdftocsv.py-tiedostomme nimellä

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

Lisää vaihtoehtoja Tabulasta

Lisää esimerkkejä asioista, joita voimme tehdä. Vaihtoehtoja on monia, on parasta käydä läpi virallisen Github-arkiston, jonka olen jättänyt

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

Epäilemättä yksi hyödyllisimmistä asioista muuntaa kaikki hakemistossa olevat PDF-, JSON- jne. Tiedostot.

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

Tämän avulla voimme automatisoida tehtäviä, jotka muuten olisivat pitkät ja tylsiä. Loppujen lopuksi tämä on yksi syy tämän kirjaston käyttöön.

Muunna PDF Exceliksi verkossa

Jos haluamme muuntaa tiedoston yksinkertaisesti, poimia taulukon tiedot PDF: stä Exceliksi, Librecalciksi tai vastaavaksi, sitä ei tarvitse tehdä niin monimutkaiseksi. Tätä varten on käytettävissä työkaluja, jotkut asennettaviksi ja toiset työn tekemiseen verkossa.

Olen kokeillut näitä kahta verkkotyökalua, ja ne toimivat erittäin hyvin.

Muista, että tämä ei ole automatisoitu työ, ja siksi näiden työkalujen tutkiminen ei ole ollut kattavaa. Kommentoin niitä vain niille, jotka saattavat olla kiinnostuneita.

Klassinen menetelmä

Ja meillä on aina klassinen menetelmä, kaikkein huolimaton ja kallis, mutta loppujen lopuksi se on vaihtoehto, jos työtä on vähän.

Kopioi taulukon solut pdf-tiedostosta ja liitä ne laskentataulukkoon.

Jätä kommentti