Bevrijd data uit een PDF met Tabula

Winny de Jong is datajournalist bij OneWorld. Daarnaast blogt ze over haar vak op Datajournalistiek.nl. Voor SVDJ.nl maakt ze aan een serie praktische tutorials voor journalisten. Hierbij worden verschillende gereedschappen uitgelicht, die journalisten direct kunnen inzetten. Verwacht naast deze eerste tutorial over Tabula — om data uit PDFs te bevrijden – ook aandacht voor Excel, Datawrapper en vele andere gereedschappen.

Er is heel veel data in de wereld opgesloten in PDF’s. Handig omdat PDF’s op vrijwel alle verschillende apparaten te lezen zijn. Onhandig voor journalisten die de data uit zo’n PDF willen gebruiken. Daarom een mini-handleiding voor het bevrijden van data uit PDF’s met Tabula.

Waarom Tabula?

Er zijn verschillende manieren en gereedschappen om data uit PDF’s te bevrijden. In deze tutorial gebruik ik Tabula, omdat het gebruiksvriendelijk; open-source (gratis!); en geschikt voor Windows en iOS is.

Tabula installeren

Surf naar Tabula.technology en download de software. Je downloadt Tabula in een zip-bestand. Tabula ‘woont’ in deze map, dus bewaar de map op een logische plek.

01 Website Tabula

Let op: als je Windows of Linux gebruikt, heb je een installatie van Java nodig. Tijdens de installatie merk je vanzelf of je Java al op je computer hebt geïnstalleerd. Mocht dat niet het geval zijn, dan kun je Java hier downloaden.

Tabula gebruiken

Klik in de map die je net gemaakt heb op Tabula. Als het goed is opent je browser een nieuw venster met Tabula. Als dat niet gebeurt, open dan zelf een webbrowser (Chrome, Firefox, Safari, Internet Explorer of een andere browser…) en typ http://localhost:8080 in als URL. Daar is Tabula!

In de startblokken

Voor we Tabula kunnen gebruiken, hebben we een PDF nodig met data erin. Voor dit voorbeeld gebruik ik het rapport Shocking Waves van de Wereldbank. Het gaat over klimaatverandering als directe bedreiging voor de allerarmsten wereldwijd. Je kunt het rapport Shocking Waves hier downloaden. Mocht je direct aan de slag willen met je eigen PDF’s, dan kan dat natuurlijk ook. Nu we een PDF-bestand hebben met tabellen erin, kunnen we beginnen: open Tabula.

uploaden pdf
PDF uploaden

Na het openen van Tabula, kun je direct een PDF uploaden. Meestal gaat dat in een keer goed, soms krijg je een foutmelding, bijvoorbeeld: “Sorry, your file upload could not be processed.”. Probeer dan eerst je scherm te verversen: zo nu en dan staat je PDF daarna bovenaan de lijst. Als dit niet zo is, probeer de PDF dan opnieuw te uploaden.

autodetect
Auto-detect

Na het uploaden gaat Tabula zelf op zoek naar tabellen: dat blijkt uit het draaiende icoontje voor “autodetect tables”. Omdat Tabula nog niet zo snel is, ben je vaak sneller klaar als je zelf tabellen selecteert.

selecteer tabel
Selecteer een tabel

In het rapport Shocking Wave staat op pagina 63 tabel 2.1. Ga naar pagina 63 van de PDF of pagina 82 van de miniaturen. (Dit verschil in paginanummer ontstaat doordat de miniaturen alle pagina’s mee tellen.) Klik in de juiste pagina en selecteer de tabel.

Je zult zien dat de tabel doorloopt op pagina 64. Gelukkig is dat geen enkel probleem voor Tabula. Ga naar de volgende pagina, en selecteer ook dat deel van de tabel. Klik daarna op op de groene ’Preview & Export Extracted Data’-knop rechtsboven de PDF.

 

Check de data

In het volgende scherm kun je de data zoals je die zou gaan exporteren bekijken. Maak van deze mogelijkheid gebruik, en controleer de data en de opmaak van de tabel zorgvuldig.

Verkeerde data geselecteerd?
Gebruik de ‘revise selections’-knop om een andere tabel te selecteren.

export0

Ziet de data er anders uit dan verwacht?
Misschien helpt het als Tabula op een andere manier de data uit de PDF haalt. Tabula kan namelijk op twee manieren data uit de PDF halen. Met de stream-methode kijkt Tabula naar de witruimte tussen de kolommen. De lattice-methode kijkt juist naar de lijnen tussen kolommen. Afhankelijk van de opmaak van de tabel werkt de Lattice of Stream methode beter. Halverwege de zijbalk links in beeld kun je wisselen tussen de methodes, tegelijkertijd zie je direct de nieuwe preview.

export 1Een andere mogelijkheid is dat Tabula de kop van de tabel niet goed herkent. In het Shocking Waves rapport heeft tabel 0.1 op pagina 15 (pagina 34 van de miniaturen) bijvoorbeeld koppen over meerdere rijen. Dat is voor Tabula moeilijker om te lezen. Selecteer in zo’n geval de tabel zonder de koppen: de kans is groot dat Tabula de data dan wel kan exporteren. De bovenste rijen kun je er dan later handmatig toevoegen in bijvoorbeeld Excel.

moeilijke koprij

Exporteer de data

Als de preview er goed uitziet, kun je data exporteren. Dat kan op verschillende manieren: kopieer de tabel naar je klembord; of exporteer de tabel als CSV, TSV, JSON, zip of CSV’s of Script.

Klembord

export3

CSV
export4

Voor de meeste doeleinden is een CSV export het beste. Als je de data in Excel of Google Spreadsheets wilt bewerken of analyseren, exporteer de data dan zeker als CSV. Lees hier hoe je CSV-bestanden importeert in een spreadsheet.

Veel succes!

Over Winny De Jong

Winny de Jong is datajournalist bij OneWorld, blogt over haar vak op datajournalistiek.nl, en verstuurt wekelijks een Data Nieuwsbrief. Voor SVDJ.nl maakt ze een serie praktische handleidingen voor journalisten die ook aan de slag willen met data.

Reageer

Geef een reactie

*