Mini-Suchmaschine für Webseite
Michael
- perl
0 Christian Kruse0 Michael0 Christian Kruse
0 der_bernd0 Sven Rautenberg0 Frank
Hallo!
Ich habe nun ziemlich lange nach einem sehr einfachen Suchmaschinen-Skript (Perl) für meine Webseite im Internet gesucht.
Leider sind mir die angebotenen zu kompliziert. Ich möchte einfach nur ein Eingabefeld für ein einzelnes Wort und ein Verzeichnis durchsuchen lassen.
An diesem Skript möchte ich dann herumfeilen.
Hat irgendjemand vielleicht eine Idee woher ich dieses (möglichst kleine) Skript herbekomme?
Könnt Ihr mir eventuell bei einem Ansatz helfen? Ich blicke echt nicht durch bei den ganzen Download-Skripts und möchte lieber versuchen es selbst zu erarbeiten und zu entwickeln.
Ich hoffe sehr auf eure Hilfe. Vielen Dank.
Michael
Hoi,
Hat irgendjemand vielleicht eine Idee woher ich dieses (möglichst kleine)
Skript herbekomme?
Selber machen.
Könnt Ihr mir eventuell bei einem Ansatz helfen? Ich blicke echt nicht
durch bei den ganzen Download-Skripts und möchte lieber versuchen es selbst
zu erarbeiten und zu entwickeln.
Wo sind deine Fragen? Komm mit einer konkreten Frage her, und wir beantworten
sie dir :-)
Gruss,
CK
Hi!
Erst mal Dank an die beiden anderen.
Aber mal ganz ehrlich CK - was sollen deine Beiträge in diesem Forum? Sprüche machen kann jeder - du sparst wohl dir und eine Menge anderer Menschen viel Zeit wenn du einfach überhaupt nichts postest.
Ich habe mein Problem klar geschildert und deutlich formulierte Fragen gestellt. Wenn du soviel weisst dann schreib doch warum die Ansätze der beiden anderen so schlecht sind oder wie man es besser machen kann.
Jetzt kannst du mal zeigen ob du wirklich was drauf hast.
Schöne Grüsse,
Michael
Hoi,
Ich habe mein Problem klar geschildert und deutlich formulierte Fragen gestellt. Wenn du soviel
weisst dann schreib doch warum die Ansätze der beiden anderen so schlecht sind oder wie
man es besser machen kann.
Wo hast du eine Frage gestellt?
Wenn du mit mir nicht klar kommst, ignorier mich. Aber versuche nicht, mir den Mund zu verbieten.
Gruss,
CK
Wo hast du eine Frage gestellt?
Wie gründlich hast du sein Posting gelesen?
Wenn du mit mir nicht klar kommst, ignorier mich. Aber versuche nicht, mir den Mund zu verbieten.
Du hattest schon immer einen Hang zur Hochnäsigkeit. Seit der Wiedereröffnung des Forums habe ich kein hilfreiches Posting in freundlichem Ton mehr von dir gelesen. Wo zwickt es dich?
cu, Liv
Hallo,
Wo hast du eine Frage gestellt?
Wie gründlich hast du sein Posting gelesen?
Sehr Gruendlich.
Wenn du mit mir nicht klar kommst, ignorier mich. Aber versuche nicht, mir den Mund zu verbieten.
Du hattest schon immer einen Hang zur Hochnäsigkeit. Seit der Wiedereröffnung des Forums
habe ich kein hilfreiches Posting in freundlichem Ton mehr von dir gelesen. Wo zwickt es dich?
So?
*plonk*
Gruesse,
CK
Sehr Gruendlich.
Noch nicht gründlich genug.
*plonk*
Hast du dich verlaufen?
Cu, Liv
Hoi,
Ich habe mein Problem klar geschildert und deutlich formulierte Fragen gestellt. Wenn du soviel
weisst dann schreib doch warum die Ansätze der beiden anderen so schlecht sind oder wie
man es besser machen kann.
Wo hast du eine Frage gestellt?
Wenn du mit mir nicht klar kommst, ignorier mich. Aber versuche nicht, mir den Mund zu verbieten.
Gruss,
CK
Hallo CK!
Ich bitte dich nun offiziell um Hilfe und habe dir jede Menge Fragen gestellt:
Zum Vorschlag von Sven:
Denkst du das der Ansatz falsch ist oder kann ich den Ansatz verwenden und muss nur Stück für Stück weiter daran arbeiten um ein professionelleres Suchsystem zu entwickeln?
Kannst du mir einen groben Vorschlag posten?
Ist es der richtige Weg alle Skripte zu durchsuchen?
Wäre dies dann bei ein paar hundert Seiten ein Problem?
Arbeitet man bei sehr vielen Seiteninhalte mit einem anderen System als alle Dateien Stück für Stück mit dem Suchwort zu vergleichen?
Wie funktioniert dieses System?
Jetzt bin ich aber Mal gespannt!!!
Viele Grüsse,
Michael
Hallo,
Ich bitte dich nun offiziell um Hilfe und habe dir jede Menge Fragen gestellt:
Nee, keine davon ist im Vorgaengerposting. _SO_ kann ich gut darauf reagieren und helfe auch
gern.
Denkst du das der Ansatz falsch ist oder kann ich den Ansatz verwenden und muss nur Stück
für Stück weiter daran arbeiten um ein professionelleres Suchsystem zu entwickeln?
Ich wuerde den Ansatz so nicht verwenden, er verbraucht zu viel Rechenzeit; ein anderer Ansatz,
der eigentlich auch recht einfach ist, waere IMHO sinnvoller: erstelle eine Index-Datei.
In der Datei kannst du separat fuer jede Sektion einen Eintrag anlegen und so das Rating
realisieren, dass Sven beschrieben hat. Die Index-Datei der Selfsuche z. B. hat das folgende
Format:
url|anker|Ueberschrift|Autor|Datum|Text
Kannst du mir einen groben Vorschlag posten?
Siehe oben.
Ist es der richtige Weg alle Skripte zu durchsuchen?
Jain. Wie gesagt, es waere wesentlich sinnvoller, eine Index-Datei ueber den Inhalt zu erstellen.
Wäre dies dann bei ein paar hundert Seiten ein Problem?
Ja, ist es. Die Index-Datei wird immer groesser und schwerer zu verwalten. Letztenendes
hilft es wohl nur, eine Stichwort-basierte Suche vorzuschalten und ueber die gefundenen
Eintraege nach Bedarf die Volltext-Suche laufen zu lassen.
Arbeitet man bei sehr vielen Seiteninhalte mit einem anderen System als alle Dateien Stück für
Stück mit dem Suchwort zu vergleichen?
Das ist das Problem: das tuen viel zu viele so.
Gruesse,
CK
Hallo CK!
Danke!
Michael
Hoi,
Danke!
Na, gern doch :-)
Gruss,
CK
Hallo Michael,
ich selbst habe zwar keine Peilung in Sachen Perl, aber die Internet World hat in ihrer Dezember-Ausgabe was ganz nettes zum Thema "Volltextsuche für die Website". Die Sache wird da (finde ich) ganz gut beschrieben und mit Code-Beispielen erklärt, den kompletten Quelltext soll's auch auf deren homepage geben. Ich denke, das wäre was für dich.
Gruß
der_bernd
Könnt Ihr mir eventuell bei einem Ansatz helfen? Ich blicke echt nicht durch bei den ganzen Download-Skripts und möchte lieber versuchen es selbst zu erarbeiten und zu entwickeln.
Ansatz fehlt? Das ist einfach:
Du öffnest das Verzeichnis und liest alle vorhandenen Dateinamen (oder nur die auf *.html - je nachdem). Dann öffnest du jede gefundene Datei und liest deren Inhalt ein. Du vergleichst jede Textzeile mit dem Suchwort, wobei du (Aufgabe für später) natürlich den Text in HTML-Tags nicht suchen solltest, aber (Aufgabe für viel später) vielleicht die Relevanz von gefundenen Suchbegriffen innerhalb von <title>, <meta>, <h1..7> oder sonstigen, von dir als Titel oder Kennzeichnung benutzten Tags erhöhst.
Im Prinzip rechnest du für jede Seite eine Zahl aus. Jeder gefundene Suchbegriff ist einen Punkt wert - damit kommen gefundene Seiten mit mehreren Treffern weiter nach vorn, als Seiten mit nur einem Treffer.
Treffer in der Überschrift könnten z.B. drei Punkte wert sein, und so weiter.
Wenn du eine Liste der gefundenen Seiten hast, gibst du als Ergebnis die Links zu den Seiten und vielleicht noch ein wenig Teaser-Text aus - fertig ist die kleine Suchmaschine.
Ich finde diese Aufgabe zum Üben von Perl sehr schön, und durchaus nicht zuviel. Klein anfangen, erstmal überhaupt was finden, und später dann das Finden ausfeilen. Ist im Ergebnis bestimmt besser, als wenn du irgendein gefundenes Skript nimmst, was seine eigene Bewertung hat, die man nicht ändern und auf die eigene Seite anpassen kann...
- Sven Rautenberg
Hoi, <-- Begruessung
Ansatz fehlt? Das ist einfach:
Nein, ist es nicht. Effiziente Such-Algorithmen haben es in sich.
Du öffnest das Verzeichnis und liest alle vorhandenen Dateinamen (oder nur
die auf *.html - je nachdem). Dann öffnest du jede gefundene Datei und
liest deren Inhalt ein. Du vergleichst jede Textzeile mit dem Suchwort,
wobei du (Aufgabe für später) natürlich den Text in HTML-Tags nicht suchen
solltest, aber (Aufgabe für viel später) vielleicht die Relevanz von
gefundenen Suchbegriffen innerhalb von <title>, <meta>, <h1..7> oder
sonstigen, von dir als Titel oder Kennzeichnung benutzten Tags erhöhst.
So kann man das machen -- wenn man eine Site von 10 Seiten hat. Wenn man es
jedoch richtig machen will, denkt man sich was vernuenftiges aus.
Ich finde diese Aufgabe zum Üben von Perl sehr schön, und durchaus nicht
zuviel.
Ich nicht. Der falsche Ansatz.
Gruss,
CK
Tag
Ansatz fehlt? Das ist einfach:
Nein, ist es nicht. Effiziente Such-Algorithmen haben es in sich.
Jeder fängt mal klein an.
Du öffnest das Verzeichnis und liest alle vorhandenen Dateinamen (oder nur
die auf *.html - je nachdem). Dann öffnest du jede gefundene Datei und
liest deren Inhalt ein. Du vergleichst jede Textzeile mit dem Suchwort,
wobei du (Aufgabe für später) natürlich den Text in HTML-Tags nicht suchen
solltest, aber (Aufgabe für viel später) vielleicht die Relevanz von
gefundenen Suchbegriffen innerhalb von <title>, <meta>, <h1..7> oder
sonstigen, von dir als Titel oder Kennzeichnung benutzten Tags erhöhst.
So kann man das machen -- wenn man eine Site von 10 Seiten hat. Wenn man es
jedoch richtig machen will, denkt man sich was vernuenftiges aus.
Richtig ist relativ. Für eine kleine Webseite mit <20 Seiten wäre es totaler Schwachsinn weiß Gott wieviele Stunden in die Entwicklung eines ungeheuer komplizierten und komplexen Suchalgorithmus zu stecken. Noch dazu wo sicher nicht jeder das nötige Know-How hat, um einen solchen Algorithmus zu entwickeln.
Für eine kleine Webseite ist meiner Ansicht nach der von Sven vorgeschlagene Weg durchaus der "richtige".
Für riesen Seiten wäre er natürlich weniger geeignet. Michael hat aber gesagt er will ein einfaches Script, an dem er selber rumfeilen kann - und genauso ist Svens Vorschlag ausgelegt. Schließlich hat er selbst gesagt, daß ihm die Suchalgorithmen die er gefunden hat zu kompliziert sind.
Ich finde diese Aufgabe zum Üben von Perl sehr schön, und durchaus nicht
zuviel.
Ich nicht. Der falsche Ansatz.
Ich schon. In seinem Fall der richtige Ansatz und außerdem die Antwort auf seine Frage.
Ciao,
Harry
PS: Ich habe eine kleine Suchmaschine in PHP programmiert, die genau nach diesem Ansatz arbeitet, in ein paar Stunden, für eine kleine Seite, die sicher nicht groß erweitert wird. Warum soll ich Tage (Wochen ? Monate ? Zeit die ich nicht habe ?) in die Entwicklung eines mordsmäßig komplizierten Algorithmus stecken ?
PPS: Is mir schon klar daß ich sobald die Besucherzahlen in den Himmel steigen und die Suche eine kritische Last für den Server darstellt ein effizienteres Suchsystem brauche. Doch bis dahin ...
Joho,
Du öffnest das Verzeichnis und liest alle vorhandenen Dateinamen (oder nur
die auf *.html - je nachdem). Dann öffnest du jede gefundene Datei und
liest deren Inhalt ein. Du vergleichst jede Textzeile mit dem Suchwort,
wobei du (Aufgabe für später) natürlich den Text in HTML-Tags nicht suchen
solltest, aber (Aufgabe für viel später) vielleicht die Relevanz von
gefundenen Suchbegriffen innerhalb von <title>, <meta>, <h1..7> oder
sonstigen, von dir als Titel oder Kennzeichnung benutzten Tags erhöhst.
So kann man das machen -- wenn man eine Site von 10 Seiten hat. Wenn man es
jedoch richtig machen will, denkt man sich was vernuenftiges aus.
Richtig ist relativ. Für eine kleine Webseite mit <20 Seiten wäre es totaler Schwachsinn weiß
Gott wieviele Stunden in die Entwicklung eines ungeheuer komplizierten und komplexen
Suchalgorithmus zu stecken. Noch dazu wo sicher nicht jeder das nötige Know-How hat, um
einen solchen Algorithmus zu entwickeln.
Noe.
Für eine kleine Webseite ist meiner Ansicht nach der von Sven vorgeschlagene Weg durchaus
der "richtige". Für riesen Seiten wäre er natürlich weniger geeignet. Michael hat aber gesagt er
will ein einfaches Script, an dem er selber rumfeilen kann - und genauso ist Svens Vorschlag
ausgelegt. Schließlich hat er selbst gesagt, daß ihm die Suchalgorithmen die er gefunden hat zu
kompliziert sind.
Es gibt auch einfachere, vernuenftige Algorithmen. Aber der ist nicht unbedingt geeignet, viel zu
viel I/O-Aktivitaet.
Ich finde diese Aufgabe zum Üben von Perl sehr schön, und durchaus nicht
zuviel.
Ich nicht. Der falsche Ansatz.
Ich schon. In seinem Fall der richtige Ansatz und außerdem die Antwort auf seine Frage.
Sehe ich nicht so.
» PS: Ich habe eine kleine Suchmaschine in PHP programmiert, die genau nach diesem Ansatz
arbeitet, in ein paar Stunden, für eine kleine Seite, die sicher nicht groß erweitert wird. Warum
soll ich Tage (Wochen ? Monate ? Zeit die ich nicht habe ?) in die Entwicklung eines
mordsmäßig komplizierten Algorithmus stecken ?
Weil jedes Stueckchen Code in einem beliebigen anderen Zusammenhang wieder auftauchen
kann.
PPS: Is mir schon klar daß ich sobald die Besucherzahlen in den Himmel steigen und die
Suche eine kritische Last für den Server darstellt ein effizienteres Suchsystem brauche. Doch
bis dahin ...
Siehe oben.
Gruss,
CK
Hallo!
Ich habe nun ziemlich lange nach einem sehr einfachen Suchmaschinen-Skript (Perl) für meine Webseite im Internet gesucht.
ich suche ebenfalls nach einem solchen skript. Nicht notwendigerweise Perl.
Falls jemand was weiß, bin ich für jeden Hinweis dankbar, meine email-adresse ist ja dabei.
Danke dafür!
Frank
P.S. auf die Tonart in diesem Thread kann ich gut verzichten.
F.