Performante Client-seitige Javascript Suchmaschine inklusive Crawler
jsSearch ist eine Suchmaschine, die komplett im Webbrowser läuft, da sie vollständig in Javascript implementiert wurde. Neben einer exakten Suche ist es optional auch möglich ähnliche Worte in die Suche mit einzubeziehen. Die Ähnlichkeit wird dabei per Levenshtein-Distanz berechnet.
Zu jsSearch gehört auch ein Crawler der zu indizierende Seiten anhand des Mime-Typs und der URL bestimmen kann. Für das indizieren können sowohl stop Worte als auch HTML-Tags, die nicht indiziert werden sollen, festgelegt werden. Alle Daten werden als Binärer-Baum in JSON Dateien gepeichert, und können deshalb auch simpel in andere Programme Integriert werden. Dies ist zum Beispiel sinnvoll um den den Index für die ähnlichen Worte zu erstellen, da dies ein sehr rechenaufwendiger Prozess ist. (Ein C Programm ist ca. 1000 mal schneller als die vorhandene Javascript Implementierung).
Eine Live-demo zu jsSearch kann hier Ausprobiert werden. Die Suche sollte mit jedem Modernen Webbrowser außer Internet Explorer funktionieren. Allerdings ist es momentan leider nur mit Firefox 3.5+ möglich einen neuen Index zu erstellen.
jsSearch ist soweit möglich und sinnvoll modular aufgebaut, und sollte relativ einfach zu erweitern sein. Dadurch sollte auch eine Erweiterung der Browserkompatibilität recht einfach möglich sein.
Jetzt noch ein Beispiel: Um einen Index mit ca. 100MB über ca. 100.000 Worte und ca. 10.000 Seiten zu durchsuchen benötigt jsSearch ca. 0,5-2 Sekunden. Eine Suche die ähnliche Worte berücksichtigt wirkt sich dabei nicht wirklich negativ auf die Performance aus.
Download:
| jsSearch-0.2.tar.gz | - Bugfix Release für lokale Indizierung |
| jsSearch-0.1.tar.gz | - Jetzt mit IE8 Support |
| jsSearch.tar.gz | - Erste Testversion |
Letzten 3 Artikel Thema: