Le tabelle non rilevato con tabula e camelot

0

Domanda

Ho provato ad estrarre le tabelle di file Pdf che non sono nel formato corretto che penso. Le tabelle in questi Pdf sono un formato di tabella ma non chiuso correttamente con verical confini. enter image description here Cercherò di allegare l'esempio pdf, e uscita con entrambe le librerie. Quando ho provato ad usare tabula per la tabella di rilevazione, un vuoto datadrame è tornato su tutte le pagine in formato pdf.

immettere 0 per pagine singole, 1 per tutti, 2 per specifica pagina: 2 immettere il numero di pagina: 25 nessun tabelle trovate su questa pagina dalla tabula.

E quando parlo di camelot non è la stessa, nessuna risposta quando uso flovor='lattice'

immettere 0 per pagine singole, 1 per tutte le pagine, 2 pagine e pagine di tabelle vengono rilevati da tabula, 3 a specifiche pagine: 3 immettere 0 per il reticolo o 1 per il flusso: 0 immettere il numero di pagina: 25 nessun tabelle trovate su questa pagina da camelot.

e quando uso flovor='stream', Ho un dataframe che ha ogni riga letta riga per riga con scheda di dati separati, ma includerà testo normale come pure in quella dataframe.

immettere 0 per pagine singole, 1 per tutte le pagine, 2 pagine e pagine di tabelle vengono rilevati da tabula, 3 a specifiche pagine: 3 immettere 0 per il reticolo o 1 per il flusso: 1 immettere il numero di pagina: 25 enter image description here

Ho solo bisogno di un modo efficace per rilevare la tabella ed estrarre dei dati stessi, verticale, allegando la tabella linee non sono presenti. Sia tabula camelot e le librerie sono a lavorare bene se la tabella è nel formato corretto racchiuse da linee orizzontali e verticali.

nlp pdf python python-camelot
2021-11-22 15:08:39
2

Migliore risposta

0

Questo metodo potrebbe aiutare: https://camelot-py.readthedocs.io/en/master/user/advanced.html#specify-column-separators

Si possono trovare specificare il separatore verticale a camelot, passando coordinate x, prima si dovrebbe usare il ".plot()" metodo di camelot per vedere la tabella all'interno del pdf e prendere nota delle coordinate x cui si desidera che il verticale separatori per essere poi passare, come di seguito:

# to get the x-coordinates
tables = camelot.read_pdf('your_pdf.pdf')
camelot.plot(tables[0], kind='text').show()

#to pass the x-coordinates
camelot.read_pdf('your_pdf.pdf', flavor='stream', columns=['x1,x2']) 
2021-11-22 15:52:19
-1

Le tabelle non rilevato con tabula e camelot

Sono stato recentemente a lavorare per estrarre tabella dal file PDF.

Tabula e camelot ha funzionato per me, ma pdfplumber mi ha fatto risultato richiesto.

import pdfplumber
pdf = pdfplumber.open(filepath)
table = pdf.pages[1].extract_table(table_settings=
{"vertical_strategy": "text", "horizontal_strategy": "text"})
df = pd.DataFrame(table, columns=table)
df.to_csv(outfile2, mode='a', index=False)
2021-11-27 11:30:02

In altre lingue

Questa pagina è in altre lingue

Русский
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................