Melkor Geschrieben 1. Februar 2006 Teilen Geschrieben 1. Februar 2006 Hi @ll, ich suche für unser Intranet eine Möglichkeit für ca. 1000 PDFs eine Suchfunktion in HTML zu realisieren, die auf Schlagwörter innerhalb der PDFs anspricht. Könnte mir da jemand weiterhelfen? Kann man über die Browsersuche verlinkte PDFs durchsuchen? Oder wie würdet ihr das umsetzen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
perdian Geschrieben 1. Februar 2006 Teilen Geschrieben 1. Februar 2006 ich suche für unser Intranet eine Möglichkeit für ca. 1000 PDFs eine Suchfunktion in HTML zu realisieren, die auf Schlagwörter innerhalb der PDFs anspricht.Über reines HTML wirst du das nicht realisieren können. HTML dient der Darstellung und bietet keinerlei Möglichkeiten der Interaktion mit anderen Datenbeständen. Um dein Ziel zu erreichen benötigst du daher eine serverseitig ausgeführte Sprache, die entweder direkt auf dem Server die hinterlegten PDFs durchsucht (sehr unperformant) oder aber einen vorher für die hinterlegten PDF-Dokumente erstellten Suchindex abfragt. Kann man über die Browsersuche verlinkte PDFs durchsuchen?Nein. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
erdnah Geschrieben 1. Februar 2006 Teilen Geschrieben 1. Februar 2006 Was ist eine "Browsersuche"? Wenn damit das Eingabefeld im Firefox gemeint ist, dann ist es natürlich möglich darüber die Suchabfrage auszuführen (die PlugIns sind ja nichts anderes als http-requests). Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
m3rry Geschrieben 1. Februar 2006 Teilen Geschrieben 1. Februar 2006 Hi @ll, ich suche für unser Intranet eine Möglichkeit für ca. 1000 PDFs eine Suchfunktion in HTML zu realisieren. Wenn euer Intranet nur aus reinem HTML besteht, wird es recht schwierig dafür eine suchfunktion zu integrieren. perdi hat es im Grunde schon gesagt, das wäre die Lösung die erstens dynamisch ist und zweitens kann ich den Suchindex bestimmen. Hierzu vielleicht mal nen Link: Wikipedia Thema Suchmaschinen Mit der Browsersuche kann man allerdings trotzdem was machen, das wird hier jetzt zwar total verkorkst und alle anderen sollten jetzt die augen schliessen um hiervon keinen Schock zu bekommen Du könntest den Text aller PDF`Dokumente manuell rauskopieren und den Text in ein HTML Dokument kopieren, die Überschrift des Textes der jeweiligen Seite dann als Link zum Dokument selbst. Nun kann jeder der diese Seite öffnet in der sich mehrere Megabyte Text befinden praktisch alle Dokumente durchsuchen, nach einem Wort. Das ist naütlich so ziemlich das krankeste was ich mir vorstellen könnte, weil es auch keineswegs Sinnvoll ist. Die Dokumente werden immer von oben anch unten durchsucht und die Wörter tauchen wahrscheinlich haufenweise auf und am Ende bringts doch irgendwie recht wenig. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Markus.K Geschrieben 1. Februar 2006 Teilen Geschrieben 1. Februar 2006 Du könntest den Text aller PDF`Dokumente manuell rauskopieren und den Text in ein HTML Dokument kopieren, die Überschrift des Textes der jeweiligen Seite dann als Link zum Dokument selbst. Nun kann jeder der diese Seite öffnet in der sich mehrere Megabyte Text befinden praktisch alle Dokumente durchsuchen, nach einem Wort. Das ist naütlich so ziemlich das krankeste was ich mir vorstellen könnte, weil es auch keineswegs Sinnvoll ist. Die Dokumente werden immer von oben anch unten durchsucht und die Wörter tauchen wahrscheinlich haufenweise auf und am Ende bringts doch irgendwie recht wenig.Also, vom Ansatz her tatsächlich gar nicht soo absurd wie man denken könnte. Also stellen wir das Grundkonzept der Suche mal so um, dass nicht in HTML-Seiten, sondern vernünftig in einer Datenbank (SELECT ... FROM suche WHERE worte LIKE "%$suchbegriff%"). Dann brauchts noch ein Indexerstellungsskript und einen cronjob für dieses (oder wenn die Seiten nicht stündlich geändert werden, kann das auch der Verantwortliche manuell anschmeißen, oder man integriert den Aufruf in das eigene CMS oder oder oder...). Die eigentliche Arbeit kommt nun: Das Indexprogramm greift sich nun eine jede PDF-Datei und liest den Text dieses Dokuments per gs ein. Wie das genau geht, mal ins gs-Manual schauen, hilfsweise mal nach ps2ascii googeln oder hier schauen. In die Datenbanktabelle wird nun Name und Pfad des PDFs zusammen mit dem Inhalt abgelegt. Richtig rund wird die Sache übrigens, wenn man nicht nur PDF, sondern ggf. gleich die Seiten des drumherumliegenden Intranets oder gar Webauftritts mit einliest und auf genau gleiche Weise ablegt. Die Suchfunktion pickt sich nun also einfach einen SELECT mit genau dem genannten Suchbegriff und spuckt Links auf sämtliche passenden Seiten (PDFs) aus. Ungefähr so in der Art haben wir kürzlich was für einen Kunden montiert... ca. 3000 HTML-Seiten plus weit über 1000 (größtenteils aber nur einseitige) PDFs und das Ganze geht auf einer hardwaretechnisch nicht soo schwachen LAMPe wirklich ratzfatz ab. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
m3rry Geschrieben 1. Februar 2006 Teilen Geschrieben 1. Februar 2006 Joa, aber das setzt ja wieder vorraus das er eine dynamische Sprache beherrschen muß und das mit der Datenbank auf die Reihe bekommt Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Melkor Geschrieben 2. Februar 2006 Autor Teilen Geschrieben 2. Februar 2006 Die Sprache wäre nicht das Problem. (Kann Javascript und n bissle PHP), aber der Aufwand ist denke ich bei den vorgeschlagenen Möglichkeiten zu hoch. Die Lösung mit den vielen HTML Pages war auch mein erster Einfall, aber das ist zu Ressourcen fressend. Ich denke ich werde mir eine andere Lösung überlegen müssen. Danke auf jeden Fall für eure Beiträge. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Markus.K Geschrieben 2. Februar 2006 Teilen Geschrieben 2. Februar 2006 Die Sprache wäre nicht das Problem. (Kann Javascript und n bissle PHP), aber der Aufwand ist denke ich bei den vorgeschlagenen Möglichkeiten zu hoch. Die Lösung mit den vielen HTML Pages war auch mein erster Einfall, aber das ist zu Ressourcen fressend. Ich denke ich werde mir eine andere Lösung überlegen müssen. Danke auf jeden Fall für eure Beiträge. Naja, angesichts der Anzahl der zu durchsuchenden Dokumente würd ich aus meiner Erfahrung heraus sagen, dass Du mit genannter Lösung gar nicht soo viel Aufwand haben wirst. Verzeichnis (ggf. rekursiv) einlesen, für jedes PDF ein pdftotext, das dabei entstehende .txt mit einem geeigneten Insert in die DB schieben ist zB in Perl in weniger als 100 Codezeilen unterzubringen - und in PHP dürfte es in gleicher Größenordnung liegen. Sonderlich anspruchsvoll ist die Aufgabe auch nicht, also ich würde es als gute Übung empfehlen, um auch mehr als nur "n bissle" PHP draufzukriegen Würd ich für mich (bin da aber auch routiniert drin) ca. 2 Stunden Arbeit ansetzen. Das zweite Prg., welches die Suche anschmeißt, dürfte in PHP sogar wesentlich einfacher als in Perl sein... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Melkor Geschrieben 2. Februar 2006 Autor Teilen Geschrieben 2. Februar 2006 Das Problem dabei ist, dass ich keine DB hinterlegen kann. Und ohne DB ist das glaube ich zu aufwendig. Oder hättest du in der Hinsicht noch einen Vorschlag? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Markus.K Geschrieben 2. Februar 2006 Teilen Geschrieben 2. Februar 2006 Das Problem dabei ist, dass ich keine DB hinterlegen kann. Und ohne DB ist das glaube ich zu aufwendig. Oder hättest du in der Hinsicht noch einen Vorschlag?Mal abgesehen davon, dass ich das für reichlich merkwürdig halte, wer ein Intranet mit u.a. 1000 PDfs betreibt, sollte wohl auch Freiraum für einen MySQL oder so haben... ich hab meine ersten Versuche mit Perl mittels CSV-Dateien gelöst, und bei relativ kleinen Datenbeständen ging das von der Performance her sogar. Hier auf der Arbeit halten wir das so, dass für kleine Datenmengen (also im Regelfall max. 20 Datensätze und vielleicht bis zu fünf Felder) mit Textdateien agiert wird, was dabei zum Teil sogar performanter als per Datenbank ist. Dafür haben wir sogar eine eigene Klasse implementiert, die die Zugriffe auf die Daten steuern. Wesentlich aufwendiger wirds sicher nicht, wenn es (was ich mal vermute) solche Klassen auf schon fertig zum Runterladen gibt, z.B. mal hier suchen gehen;) Allerdings fürchte ich, für Deine Belange könnte das mit Textdatei schon etwas kritisch werden. Also wenn Dein Arbeitgeber eine sinnvolle Lösung will, mach ihm mal klar, dass eine Datenbank ziemlich unverzichtbar sein dürfte. Wesentliche Anforderungen (Kosten) bestehen eigentlich nicht, wenn schon ein Intranet vorhanden ist, und der Aufwand sowas zu installieren sollte für einen angehenden FISI wohl erlernbar sein. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Melkor Geschrieben 2. Februar 2006 Autor Teilen Geschrieben 2. Februar 2006 OK. Danke erstmal. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
m3rry Geschrieben 2. Februar 2006 Teilen Geschrieben 2. Februar 2006 Vielleicht um die den Schrecken zu nehmen, eine MySQL Datenbank lässt sich ganz einfach mittels installier einrichten einfach mal www.mysql.org gehen, die aktuellste Distribution runterladen und auf einem Rechner installieren. Da ist nichts besonderes bei, wenn du die DB nicht selbst konfigurieren möchtest, empfehle ich dir XAMP http://www.apachefriends.org/de/ Dort gibt es eine Installation für Apache, Mysql und php alles in einem installieren und dann kannst du theoretisch gleich loslegen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Melkor Geschrieben 3. Februar 2006 Autor Teilen Geschrieben 3. Februar 2006 Danke für den Link. Ich werde mich da mal ein bisschen reinarbeiten und das mal ausprobieren. Danke für eure Hilfe. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.