Open-Data-Praxistipp: Tabellarische Daten aus PDF-Dateien extrahieren

Open-Data-Praxistipp: Tabellarische Daten aus PDF-Dateien extrahieren

"Oh, eine Tabelle mit spannenden Daten! Ich erstelle mal eben ein Balkendiagramm mit einer grafischen Auswertung in meinem Office-Programm (z.B. LibreOffice oder Excel)."

Wer diesen oder ähnliche Gedanken schon mal hatte, hat bestimmt auch schon vor dem Problem gestanden, dass die tabellarischen Daten in einer PDF-Datei präsentiert wurden und somit gar keine eigene Auswertung durchgeführt werden konnte, ohne erst die Zahlen mühsam abzutippen.

Denn um tabellarische Informationen auswerten und weiterverarbeiten zu können, müssen diese in einem maschinenlesbaren Format vorliegen. Auf dem Open-Data-Portal der Stadt Münster stellen wir daher alle Daten in entsprechenden Formaten zur Verfügung: Bei Tabellen sind das meist die Formate CSV, XLS oder XLSX. Eine Auswertung oder Weiterverarbeitung mit eigenen Programmen wird somit nicht unnötig erschwert.

Aber auch in der Open Data Koordination Münster kommen manchmal PDF-Dateien an, in denen sich tabellarische Daten befinden. Wie man an diese Daten trotzdem herankommen kann, wird in diesem Blog-Beitrag gezeigt.

Tipp 1: "Copy & Paste"

Dieser Tipp funktioniert nur bei relativ einfach strukturierten Inhalten, und auch dann nicht unbedingt. Trotzdem geht es sehr schnell und es kann somit nicht schaden dies zuerst einmal auszuprobieren:

  1. Je nach Art der PDF-Datei können nach dem Öffnen in einem PDF-Betrachter die Daten in der Tabelle mit der Maus markiert werden: Mit der gedrückter Maustaste einmal quer über die Tabelle fahren.
  2. Mit der Tastenkombination STRG+C den markierten Text-Inhalt kopieren.
  3. Eine Excel- oder LibreOffice-Datei öffnen, den kopierten Inhalt in einem leeren Tabellenblatt in der ersten Zelle oben Links mit STRG+V einfügen.
    • Falls alles in der ersten Spalte eingefügt wird, dann die erste Spalte der Excel-Datei markieren, und über den Menüpunkt "Daten->Text in Spalten" die Trennzeichen auswählen, um die Daten korrekt in alle Spalten zu übertragen.
  4. Alternativ kann man auch versuchen, die Daten mit STRG-V bei einem Online-Dienst wie "Google Tabellen" in ein leeres Tabellenblatt einzufügen. Teilweise funktioniert das besser als bei Excel.

Tipp 2: Kostenlose Online-Dienste zur PDF-Konvertierung

Hinweis: Tun Sie dies auf keinen Fall, wenn es sich bei den Tabelleninhalten um personenbezogene oder schützenswerte Daten handelt! Es ist unbekannt, in welcher Form die auf externe Dienste hochgeladenen Daten weiterverarbeitet werden, und teilweise haben die Online-Anbieter noch nicht einmal ein gültiges Impressum.

Falls es sich bei den zu extrahierenden Daten also um frei weiterverwendbare Inhalte im Sinne von Open Data handelt, können Sie wie folgt fortfahren:

  1. Wenn es sich um eine PDF-Datei mit nur einer Tabelle handelt, oder z.B. um eine Bilddatei (JPG, PNG), in der nur die gewünschte Tabelle enthalten ist, dann bei Schritt 5 fortfahren.
  2. Bei größeren Dateien mit viel Text und mehreren Tabellen: Die PDF-Datei mit einem PDF-Betrachter öffnen.
  3. Die gewünschte Daten-Tabelle auf dem Bildschirm möglichst groß machen. (Oft gibt es eine Zoom-Funktion im PDF-Betrachter)
  4. Die Tabelle mit einem Bildschirm-Ausschneide-Tool ausschneiden (Unter Windows z.B. mit STRG+SHIFT+S). Manchmal hilft es, wenn man im Ausschnitt den linken Tabellen-Rand weglässt.
  5. Den Screenshot-Ausschnitt, der nur die Tabelle enthält, als Bilddatei lokal abspeichern, z.B. auf dem Desktop oder im Home-Ordner.
  6. Gehen Sie nun in ihrem Browser auf eine der folgenden Seiten:
    Wir können keine Gewährleistung für die Inhalte dieser Seiten übernehmen. Hierbei handelt es sich um externe Angebote, die Stand 13.09.2021 in unserem Test gut funktioniert haben:

    1. https://online2pdf.com => Wird von einer Privatperson in Österreich betrieben
    2. https://onlineocr.net => Betreiber unbekannt, aber sehr gute Ergebnisse
  7. Fahren Sie nur fort, wenn es sich bei Ihrer Tabelle um nicht-schützenswerte Inhalte handelt!
    1. Klicken Sie auf "Dateien auswählen" bzw. "Select file" und wählen Sie die Bilddatei mit dem Screenshot der Tabelle aus.
    2. Wählen Sie "Excel" bei "Konvertieren zu" bzw. bei "Output Format".
    3. Klicken Sie "Konvertieren" bzw. "Convert".
    4. Nach kurzer Wartezeit können Sie eine Excel-Datei herunterladen.
  8. Sie sollten beim Öffnen dieser Excel-Datei keine Makros ausführen, da diese schadhaften Code enthalten könnten. Wenn Sie die Datei weitergeben möchten, dann empfiehlt es sich evtl., die Daten in eine neue, leere Excel-Datei zu kopieren, um eventuell vorhandenen Macro-Code oder Nachrichten aus den Datei-Informationen zu entfernen.

Tipp 3: Microsoft One Note

Gerade bei Bürorechnern ist Microsoft OneNote oft vorinstalliert und es enthält eine Funktion zur Bilderkennung. In unseren Versuchen hat es nicht so gut abgeschnitten, aber gerade bei schützenswerten Daten ist es evtl. eine Alternative zur Nutzung von Online-Diensten.

  1. Schneiden Sie wie unter Tipp 2 gezeigt die gewünschten Tabellendaten mit einem Screenshot-Tool aus
  2. Fügen Sie die Tabellen-Grafik in eine OneNote-Notiz ein, z.B. unter "Schnelle Notizen"
  3. Klicken Sie mit der rechten Maustaste auf das Bild und wählen Sie "Text aus Bild kopieren"
  4. Fügen Sie den kopierten Inhalt in eine leere Excel-Tabelle ein

Tipp 4: Adobe Acrobat Pro

Mit Adobe Acrobat Pro kann man ebenfalls tabellarische Daten aus PDF-Dateien extrahieren. Dazu muss man die PDF Datei im Windows Explorer mit der rechten Maustaste anklicken, und dann "Mit Adobe Acrobat bearbeiten" auswählen. Sobald sich Adobe Acrobat Pro geöffnet hat, kann man nun folgendes durchführen:

  1. Gewünschte Tabelleninhalte markieren
  2. Die Leiste "Häufig verwendete Werkzeuge" an die rechten Bildschirmseite öffnen
  3. In der Leiste auswählen: "In anderes Format exportieren" -> "Nach Microsoft Excel exportieren"
  4. Speicherort und Dateiname für eine neue Datei angeben, in der die Daten gespeichert werden sollen

Neuen Kommentar schreiben

To prevent automated spam submissions leave this field empty.
CAPTCHA

Diese Sicherheitsfrage überprüft, ob Sie ein menschlicher Besucher sind und verhindert automatisches Spamming.

7 + 1 = Lösen Sie diese einfache Rechenaufgabe und geben Sie das Ergebnis ein, z. B. für 1+3, geben Sie 4 ein.