2016-07-15 1 views
2

Ich möchte eine Volltextsuche für * .epub-Dateien implementieren. Daher gab ich die epub-Volltextsuche Modul (https://github.com/friedolinfoerder/epub-full-text-search) gegabelte. Ich werde viele Ebooks durchsuchen müssen, also möchte ich einen Weg haben, nur in einem bestimmten E-Book einzeln zu suchen.Filterung mit Suchindex

Wie könnte ich dies mit Such-Index tun. Ich kodierte eine Lösung, die in den Feldern Dateiname (der eindeutige Dateiname des epub) und Körper (der Inhalt der Kapitel) zu suchen, aber dies fühlt sich nicht wie es ist der richtige Weg, dies zu tun und die Leistung ist auch nicht ideal. Hier

ist ein Beispiel, wie ich tun, um die Suche mit search-index:

searchIndex.search({ 
    query: [{ 
     AND: [ 
      {body: ['epub']}, 
      {filename: ['accessible_epub_3']} 
     ] 
    }] 
}); 

Gibt es einen besseren Weg, dies zu tun. Vielleicht mit Eimern, Kategorien und Filtern?

Danke für Ihre Hilfe!

Antwort

2

Der Suchindex, auf dem die epub-Volltextsuche basiert, gibt ein Suchergebnis für jedes Dokument/Element zurück, das eine Übereinstimmung für eine bestimmte Abfrage hat. Meine Vermutung ist, dass Sie gerne wissen möchten, wo Sie in der epub-Datei einen Treffer landen. Wenn ein bestimmter Absatz ein Suchergebnis ist, das gut genug ist, würde ich Absätze indizieren. Jeder Absatz hätte einen eindeutigen Buchschlüssel als Filter und möglicherweise einen Verweis darauf, wo er sich in der epub-Datei befindet (Seite/Prozentsatz/etc).

Haftungsausschluss: Ich arbeite am Search-Index-Projekt.

+0

Wie läuft es, @friedi? Hast du Fortschritte gemacht? –