Was ich habe, ist eine Reihe von PDFs (einige 100). Sie haben weder eine richtige Struktur noch bestimmte Felder. Alles, was sie haben, ist viel Text.
Was ich versuche zu tun:
Indexieren Sie die PDFs und suchen Sie nach einigen Keywords mit dem Index. Ich bin daran interessiert zu finden, ob dieses bestimmte Keyword in der PDF-Datei ist und wenn es so ist, möchte ich die Zeile, in der das Keyword gefunden wird. Wenn ich in einem PDF-Dokument, das diesen Begriff enthält, nach "Google" gesucht habe, würde ich gerne sehen, dass Google eine großartige Suchmaschine ist. Dies ist die Zeile in der PDF-Datei.
Wie ich mich entschieden habe:
Entweder SOLR oder Whoosh, aber SOLR sieht gut aus für die integrierte PDF-Unterstützung. Ich bevorzuge Code in Python und Sunburst ist ein Wrapper für SOLR, den ich mag. SOLRs Beispiel / Beispielprojekt enthält eine preisvergleichsbasierte Schemadatei. Jetzt bin ich mir nicht sicher, ob ich SOLR benutzen kann, um mein Problem zu lösen.
Was meinst du? Jede Eingabe wird sehr geschätzt.
Ich denke Solr passt zu Ihren Bedürfnissen.
Die "Highlighting" -Funktion ist, was Sie suchen .. Dazu müssen Sie die Dokumente in Lucene Index indizieren und speichern.
Die Hervorhebungsfunktion gibt einen Ausschnitt zurück, in dem der gesuchte Text markiert ist.
Schau dir das an: Ссылка
Eine weitere Offline- / Standalone-Lösung:
Ich löste das einmal, indem ich die PDF-Dateien in Text mit Dienstprogrammen umwandelte, wie pdftotext
( pdftohtml
würde auch funktionieren, denke ich), einen "Cache" einiger Arten erzeugend. Dann benutze ich grep
Ich suchte den Text-Datei-Cache nach Schlüsselwörtern.
Das ist ein wenig anders als Ihre vorgeschlagene Lösung, aber ich kann mir vorstellen, dass Sie das auch von Python aus aufrufen können.