Parsen von PDF-Dateien (vor allem mit Tabellen) mit PDFBox

Ich brauche zum analysieren einer PDF-Datei mit tabellarischen Daten. Ich bin mit PDFBox um die Datei zu extrahieren text zu analysieren, das Ergebnis (String) später. Das problem ist, dass der text-Extraktion nicht funktioniert, als ich erwartet hatte für tabellarische Daten. Zum Beispiel habe ich eine Datei, die enthält eine Tabelle wie diese (7 Spalten: die ersten beiden haben immer Daten, nur eine Komplexität Spalte Daten enthält, wird nur eine Finanzierung, die Spalte Daten):

+----------------------------------------------------------------+
| AIH | Value | Complexity                     | Financing       |
|     |       | Medium | High | Not applicable | MAC/Other | FAE |
+----------------------------------------------------------------+
| xyz | 12.43 | 12.34  |      |                | 12.34     |     |
+----------------------------------------------------------------+
| abc | 1.56  |        | 1.56 |                |           | 1.56|
+----------------------------------------------------------------+

Dann benutze ich PDFBox:

PDDocument document = PDDocument.load(pathToFile);
PDFTextStripper s = new PDFTextStripper();
String content = s.getText(document);

Diese zwei Zeilen von Daten extrahiert werden, wie diese:

xyz 12.43 12.4312.43
abc 1.56 1.561.56

Gibt es keine Leerzeichen zwischen den letzten beiden zahlen, aber das ist nicht das größte problem. Das problem ist, dass ich nicht weiß, was die letzten beiden zahlen bedeuten: Mittel, Hoch, Nicht anwendbar? MAC/Andere, FAE? Ich habe nicht die Beziehung zwischen den zahlen und Ihren Spalten.

Ist es nicht erforderlich, dass für mich mit der PDFBox-Bibliothek, also eine Lösung, die verwendet eine andere Bibliothek ist in Ordnung. Was ich will ist zu können, analysieren Sie die Datei, und wissen, was jeder analysiert Zahl bedeutet.

Viel Glück... ich bin in PDF die Hölle selbst, und ziemlich angewidert mit dem format ganz an diesem Punkt.
PDF wurde entwickelt, um eine Ausgabe-display-format und nicht für die Extraktion. Die Schuld der Benutzer, nicht das format.
Wenn die PDF-Datei wird von einem festen layout dann gibt es andere Möglichkeiten der Extraktion der Daten aus den Spalten. Ich habe gerade ein tool geschrieben, um zu extrahieren PDF-text aus festen feldpositionen in einem Formular. Es wäre interessant zu sehen sein, die PDF-Datei, Matheus bezieht.
Leider kann ich nicht zeigen, die PDF-Datei. Es enthält Projekt-client-Daten und kann nicht weitergegeben werden.
Ich habe das gleiche problem mit einer anderen Bibliothek (pdfparser.org). Es scheint nicht zu einem library-problem. Die Lösung kam ich, nach viel suchen ist der Prozess unterteilt sich in zwei: 1)PDFtoHTML & 2)HTMLtoTXT.

InformationsquelleAutor matheus.emm | 2010-07-08

Schreibe einen Kommentar