Was ist das beste Open-Source-Tool, um Textinhalte aus Dateien zu parsen, um sie für die Suche verfügbar zu machen?

Ich möchte Textinhalte aus beliebigen Dateitypen analysieren, um sie für die Suche verfügbar zu machen. Angenommen, die Datei kann .txt, .docx - Dokumenttypdateien oder eine Bild-, Audio- oder Videodatei sein.

Ich könnte Apache Tikadies tun. Gibt es ein alternatives Tool? Welcher ist der beste unter ihnen, um einen Textparser zu erstellen?

Kann jemand etwas Einblick auf diese verschütten.

Antworten (1)

Da Ihre Suche bereits Apache Tika als beste Lösung gefunden hat, liegt dies daran, dass die Aufgabe, Daten aus vielen verschiedenen Quellen zu verarbeiten, kompliziert ist und genau das versucht Tika zu lösen. Um es klar zu sagen: Apache Tika verwendet andere Open-Source-Tools, um diese eigentliche Datenextraktion durchzuführen: Wie Apache POI, um Daten aus Word-Dokumenten zu extrahieren, und ich denke, es könnte PDFBox verwenden, um Text aus PDF-Dokumenten zu extrahieren.

Es ist nicht schwer, Text aus Word-Dokumenten oder PDF-Dokumenten zu extrahieren, aber Sie müssen jeden Fall behandeln, und um eine robuste Methode zur Verwaltung dieser anderen Tools zu entwickeln, müssen Sie Apache Tika neu erstellen. Wenn Sie auf exotischere Dokumenttypen stoßen (für die es keinen Parser gibt), stellt Tika Schnittstellen bereit, um Ihren eigenen Extraktor zu definieren und diesen zu den Dokumenten hinzuzufügen, mit denen es arbeiten kann.

Sie können also entweder Tika verwenden oder eine Lösung übergeben. Das heißt, es gibt Tools, die tika erweitern und All-in-One-Dokumentensuchfunktionen bieten, nämlich Apache Solr. Apache Solr ist ein Server, der Funktionen zum Analysieren und Indizieren von Dokumenten mithilfe einer erholsamen API bereitstellt (sogar um die Dokumente zu füttern). Unter der Haube verwendet er das Lucene-Framework. Wenn Sie es nicht ertragen können, mit einer erholsamen API zu arbeiten, und direkt in Java arbeiten möchten, verwenden Sie direkt Lucene.