Keyword Generator Tool

'; ///--Eingegebene Daten abfragen--/// $verarbeiten = 'ja'; $quelle = ''; $datei = ''; $textfeld = ''; $datei = @$HTTP_POST_VARS['datei']; $textfeld = @$HTTP_POST_VARS['textfeld']; if ($textfeld == '') { if ($datei == '') {} else { $quelle = @implode("", file($datei)); }; }; if ($datei == '') { if ($textfeld == '') {} else { $quelle = $textfeld; }; }; if ($quelle == ''){$verarbeiten = 'nein';}; if ($verarbeiten == 'nein') { echo'

Das Keywordtool erstellt aus den Worten einer Datei, Webseite (html,php,xml,txt u.ä.) oder eines Textes eine Liste von Keywords für das Meta-Tag "Keywords", Tagwolken, Socialbookmarking usw.

Wie arbeitet das Keywordtool?

  1. Zunächst wird die Eingabe (Text oder Datei) in eine Liste aller Begriffe umgewandelt. Dazu werden Sonderzeichen, Code und Zeilenumbrüche entfernt und der verbliebene Rest in Kleinbuchstaben umgewandelt.
  2. Dann werden die im Dokument vorkommenden Begriffe mit einer Liste von knapp 1000 unerwünschten Ausdrücken (Stoppwords) verglichen.
  3. Die verbliebenen Begriffe werden nach Häufigkeit sortiert, weil häufig auftauchende Ausdrücke normalerweise wichtiger für den Inhalt des Dokuments sind, als seltenere.
  4. Gleich häufige Ausdrücke bleiben nach ihrem ersten Auftauchen sortiert, weil die wichtigsten Informationen in der Regel im oberen Teil des Dokumentes zu finden sind.
  5. Zum Schluss wird die Liste so verkürzt, dass die fertigen Keywords nicht mehr als 200 Zeichen haben und dabei kein Wort abgeschnitten wird.

Achtung! Je nach Länge des Textes bzw Größe der verarbeiteten Datei, kann das ein paar Sekunden dauern.

Womit hat das Keywordtool Probleme?

Wie komme ich trotzdem an meine Keywords?

Das Keywordtool funktioniert längst noch nicht so gut, wie ich es gerne hätte. Aber ich arbeite daran ;)
Bis dahin hilft es in 99 Prozent der Fälle, den sichtbaren Seiteninhalt zu markieren (Str+A), zu kopieren (Str+C) und den Inhalt der Zwischenablage als Text zu verarbeiten.

'; } else { ///--Eingegeben Daten zu einer Wortliste verarbeiten--/// //--Html-Tags entfernen--// $quelle = strip_tags($quelle); $quelle = str_replace(" ","", $quelle); //--Zeilenumbrüche entfernen--// $quelle = preg_replace("/\r|\n/s",";",$quelle); //--Ausdrücke ersetzen, die man behalten will (Großbuchstaben sind wichtig)--// $quelle = str_replace('€','euro', $quelle); $quelle = str_replace('Ae','ä', $quelle); $quelle = str_replace('ä','ä', $quelle); $quelle = str_replace('ä','ä', $quelle); $quelle = str_replace('Oe','ö', $quelle); $quelle = str_replace('ö','ö', $quelle); $quelle = str_replace('Ã-','ö', $quelle); $quelle = str_replace('ö','ö', $quelle); $quelle = str_replace('.C3.96','ö', $quelle); $quelle = str_replace('.C3.B6','ö', $quelle); $quelle = str_replace('ãœ','ü', $quelle); $quelle = str_replace('Ue;','ü', $quelle); $quelle = str_replace('ü','ü', $quelle); $quelle = str_replace('%C3%9C','ü', $quelle); $quelle = str_replace('ü','ü', $quelle); $quelle = str_replace('ß','ß', $quelle); $quelle = str_replace('ß','ß', $quelle); $quelle = str_replace('.C3.9F','ß', $quelle); $quelle = str_replace('f.a.q.','faq', $quelle); //--Diese Zeichen ersatzlos entfernen--// $entfernen_array = array ('â','œ',' ','{nl}','&',' ','|','(',')','/','!','?','_','<','>',':',',','.','-',']','[',';','”','„','“','*','+','&','=','§','$','%','{','}','0','1','2','3','4','5','6','7','8','9'); $quelle = str_replace($entfernen_array,';', $quelle); $quelle = ereg_replace("[#`´~\]",';',$quelle); $quelle = str_replace('"',';', $quelle); $quelle = str_replace("'",';', $quelle); //--In Kleinbuchstaben umwandeln--// $quelle = strtolower($quelle); ///--Bestimmte Wörter und Zeichenfolgen aussortieren--/// //--Diese Ausdrücke entfernen--// //--mit Komma (,) trennen ohne Leerzeichen. Das Komma am Anfang muss erhalten bleiben!--// $diese_ausdruecke_aussortieren = ' ,ab,aber,abgerufen,abgerufene,abgerufener,abgerufenes,acht,ähnlich,alle,allein,allem,allen,aller,allerdings,allerlei,alles,allgemein,allmählich,allzu,als,alsbald,also,am,an,andere,anderem,anderen,anderer,andererseits,anderes,andern,andernfalls,anders,anerkannt,anerkannte,anerkannter,anerkanntes,anfangen,anfing,angefangen,angesetzt,angesetzte,angesetzten,angesetzter,ansetzen,anstatt,arbeiten,auch,auf,aufgehört,aufgrund,aufhören,aufhörte,aufzusuchen,aus,ausdrücken,ausdrückt,ausdrückte,ausgenommen,außen,ausser,außer,ausserdem,außerdem,außerhalb,autor,bald,bearbeite,bearbeiten,bearbeitete,bearbeiteten,bedarf,bedürfen,bedurfte,befragen,befragte,befragten,befragter,begann,beginnen,begonnen,behalten,behielt,bei,beide,beiden,beiderlei,beides,beim,beinahe,beitragen,beitrugen,bekannt,bekannte,bekannter,bekennen,benutzt,bereits,berichten,berichtet,berichtete,berichteten,besonders,besser,bestehen,besteht,beträchtlich,bevor,bezüglich,bietet,bin,bis,bisher,bislang,bist,bleiben,blieb,bloß,böden,brachte,brachten,brauchen,braucht,bräuchte,bringen,bzw,da,dabei,dadurch,dafür,dagegen,daher,dahin,damals,damit,danach,daneben,dank,danke,danken,dann,daran,darauf,daraus,darf,darfst,darin,darüber,darum,darunter,das,daß,dass,dasselbe,davon,davor,dazu,dein,deine,deinem,deinen,deiner,deines,dem,demnach,demselben,den,denen,denn,dennoch,denselben,der,derart,derartig,derem,deren,derer,derjenige,derjenigen,derselbe,derselben,derzeit,des,deshalb,desselben,dessen,desto,deswegen,dich,die,diejenige,dies,diese,dieselbe,dieselben,diesem,diesen,dieser,dieses,diesseits,dinge,dir,direkt,direkte,direkten,direkter,doch,doppelt,dort,dorthin,drauf,drei,dreißig,drin,dritte,drüber,drunter,du,dunklen,durch,durchaus,dürfen,durfte,dürfte,durften,eben,ebenfalls,ebenso,ehe,eher,eigenen,eigenes,eigentlich,ein,eine,einem,einen,einer,einerseits,eines,einfach,einführen,einführte,einführten,eingesetzt,einig,einige,einigem,einigen,einiger,einigermaßen,einiges,einmal,eins,einseitig,einseitige,einseitigen,einseitiger,einst,einstmals,einzig,elf,ende,entsprechend,entweder,er,ergänze,ergänzen,ergänzte,ergänzten,erhält,erhalten,erhielt,erhielten,erneut,eröffne,eröffnen,eröffnet,eröffnete,eröffnetes,erst,erste,ersten,erster,es,etc,etliche,etwa,etwas,euch,euer,eure,eurem,euren,eurer,eures,fall,falls,fand,fast,ferner,finden,findest,findet,folgende,folgenden,folgender,folgendes,folglich,fordert,forderte,forderten,fortsetzen,fortsetzt,fortsetzte,fortsetzten,fragte,frau,frei,freie,freier,freies,fünf,für,gab,gängig,gängige,gängigen,gängiger,gängiges,ganz,ganze,ganzem,ganzen,ganzer,ganzes,gänzlich,gar,geben,geblieben,gebracht,gedurft,geehrt,geehrte,geehrten,geehrter,gefallen,gefälligst,gefällt,gefiel,gegeben,gegen,gehabt,gehen,geht,gekommen,gekonnt,gemacht,gemäss,gemocht,genommen,genug,gern,gesagt,gesehen,gestern,gestrige,getan,geteilt,geteilte,getragen,gewesen,gewissermaßen,gewollt,geworden,gib,gibt,gleich,gleichwohl,gleichzeitig,glücklicherweise,gratulieren,gratuliert,gratulierte,gut,gute,guten,hab,habe,haben,halb,hallo,hast,hat,hatte,hätte,hatten,hätten,hattest,hattet,heraus,herein,heute,heutige,hier,hiermit,hiesige,hin,hinein,hinten,hinter,hinterher,hoch,höchstens,html,http,hundert,ich,igitt,ihm,ihn,ihnen,ihr,ihre,ihrem,ihren,ihrer,ihres,im,image,immer,immerhin,in,indem,indessen,info,infolge,innen,innerhalb,ins,insofern,inzwischen,irgend,irgendeine,irgendwas,irgendwen,irgendwer,irgendwie,irgendwo,ist,ja,jährig,jährige,jährigen,jähriges,je,jede,jedem,jeden,jedenfalls,jeder,jederlei,jedes,jedoch,jemand,jene,jenem,jenen,jener,jenes,jenseits,jetzt,kam,kann,kannst,kaum,kein,keine,keinem,keinen,keiner,keinerlei,keines,keineswegs,klar,klare,klaren,klares,klein,kleinen,kleiner,kleines,komme,kommen,kommt,konkret,konkrete,konkreten,konkreter,konkretes,können,könnt,konnte,könnte,konnten,könnten,künftig,lag,lagen,langsam,längst,längstens,lassen,laut,lediglich,leer,legen,legte,legten,leicht,leider,lesen,letzte,letzten,letztendlich,letztens,letztes,letztlich,lichten,liegt,liest,links,mache,machen,machst,macht,machte,machten,mag,magst,mal,man,manche,manchem,manchen,mancher,mancherorts,manches,manchmal,mann,mehr,mehrere,mein,meine,meinem,meinen,meiner,meines,meist,meiste,meisten,mich,mindestens,mir,mit,mithin,mochte,möchte,möchten,möchtest,mögen,möglich,mögliche,möglichen,möglicher,möglicherweise,morgen,morgige,muss,muß,müssen,musst,mußt,müßt,musste,müsste,müßte,mussten,müssten,nach,nachdem,nachher,nachhinein,nächste,nahm,nämlich,natürlich,neben,nebenan,nehmen,nein,neu,neue,neuem,neuen,neuer,neues,neun,nicht,nichts,nie,niemals,niemand,nimm,nimmer,nimmt,nirgends,nirgendwo,noch,nötigenfalls,nun,nur,nutzen,nutzt,nützt,nutzung,ob,oben,oberhalb,obgleich,obschon,obwohl,oder,oft,ohne,online,org,per,pfui,plötzlich,pro,reagiere,reagieren,reagiert,reagierte,rechts,regelmäßig,rief,rund,sage,sagen,sagt,sagte,sagten,sagtest,sämtliche,sang,sangen,schätzen,schätzt,schätzte,schätzten,schlechter,schließlich,schnell,schon,schreibe,schreiben,schreibens,schreiber,schwierig,sechs,sehe,sehen,sehr,sehrwohl,seht,sei,seid,sein,seine,seinem,seinen,seiner,seines,seit,seitdem,seite,seiten,seither,selber,selbst,senke,senken,senkt,senkte,senkten,setzen,setzt,setzte,setzten,sich,sicher,sicherlich,sie,sieben,siebte,siehe,sieht,sind,singen,singt,so,sobald,sodaß,soeben,sofern,sofort,sog,sogar,solange,solch,solche,solchem,solchen,solcher,solches,soll,sollen,sollst,sollt,sollte,sollten,solltest,somit,sondern,sonst,sonstwo,sooft,soviel,soweit,sowie,sowohl,später,spielen,startet,startete,starteten,statt,stattdessen,steht,steige,steigen,steigt,stets,stieg,stiegen,such,suchen,tages,tat,tät,tatsächlich,tatsächlichen,tatsächlicher,tatsächliches,tausend,teile,teilen,teilte,teilten,titel,total,trage,tragen,trägt,trotzdem,trug,tun,tust,tut,übel,über,überall,überallhin,überdies,übermorgen,übrig,übrigens,um,umso,unbedingt,und,ungefähr,unmöglich,unmögliche,unmöglichen,unmöglicher,unnötig,uns,unser,unser,unsere,unserem,unseren,unserer,unseres,unserm,unten,unter,unterbrach,unterbrechen,unterhalb,unwichtig,usw,vergangen,vergangene,vergangener,vergangenes,vermag,vermögen,vermutlich,veröffentlichen,veröffentlicher,veröffentlicht,veröffentlichte,veröffentlichten,veröffentlichtes,verrate,verraten,verriet,verrieten,version,versorge,versorgen,versorgt,versorgte,versorgten,versorgtes,viel,viele,vielen,vieler,vieles,vielleicht,vielmals,vier,völlig,vollständig,vom,von,vor,voran,vorbei,vorgestern,vorher,vorne,vorüber,wachen,während,während,währenddessen,wann,war,wär,wäre,waren,wären,warst,warum,was,weder,weg,wegen,weil,weiß,weiter,weitere,weiterem,weiteren,weiterer,weiteres,weiterhin,welche,welchem,welchen,welcher,welches,wem,wen,wenig,wenige,weniger,wenigstens,wenn,wenngleich,wer,werde,werden,werdet,weshalb,wessen,wichtig,wie,wieder,wieso,wieviel,wiewohl,will,willst,wir,wird,wirklich,wirst,wo,wodurch,wogegen,woher,wohin,wohingegen,wohl,wohlweislich,wolle,wollen,wollt,wollte,wollten,wolltest,wolltet,womit,woraufhin,woraus,worin,wurde,würde,wurden,würden,zahlreich,zehn,zeitweise,ziehen,zieht,zog,zogen,zu,zudem,zuerst,zufolge,zugleich,zuletzt,zum,zumal,zur,zurück,zusammen,zuviel,zwanzig,zwar,zwei,zwischen,zwölf '; //--Aussortieren vorbereiten--// $aussortieren_array = explode(",", $diese_ausdruecke_aussortieren); $anzahl_der_zu_entfernenden_ausdruecke = count($aussortieren_array) - "1"; $keywords_array = explode(";", $quelle); $anzahl_der_keywords = count($keywords_array); $aussortieren_nummer = '0'; $keywords_nummer = '0'; $keywords = ''; //--Vergleich der Wörter der Datei mit der Liste der unerwünschten Ausdrücke--// while ($keywords_nummer < $anzahl_der_keywords) { //--Zu kurze Ausdrücke entfernen--// $wort1 = $keywords_array[$keywords_nummer]; if (strlen($wort1) < 3) {$keywords_array[$keywords_nummer] = '';} //--Ausdruck mit der Aussortieren-Liste vegleichen--// while ($aussortieren_nummer < $anzahl_der_zu_entfernenden_ausdruecke) { $aussortieren_nummer++; $wort2 = $aussortieren_array[$aussortieren_nummer]; if ($wort1 == $wort2) { $keywords_array[$keywords_nummer] = ''; }; }; $aussortieren_nummer = '0'; //--Liste der tauglichen Keywords erstellen--// if ($keywords_array[$keywords_nummer] == '') {} else { $keywords = $keywords.$keywords_array[$keywords_nummer].';'; }; $keywords_nummer++; }; ///--Ausdrücke sortieren--/// //--Einzelne Ausdrücke der Liste auslesen--// $keywords_array = explode(";", $keywords); $keywords = ' '; //--Unterschiedliche Ausdrücke suchen und Häufigkeit zählen--// foreach ($keywords_array as $wort) { @$einzelne_keywords_array[$wort]++; }; //--Ermitteln welche Häufungen existieren--// arsort($einzelne_keywords_array); foreach ($einzelne_keywords_array as $wort => $zahl) { $zaehler_array[$zahl] = $wort; }; //--Sortieren anhand der Häufungen--// foreach ($zaehler_array as $anzahl => $nutzlose_worte) { foreach ($einzelne_keywords_array as $wort => $wie_oft) { if ($wie_oft == $anzahl) { $keywords = $keywords.$wort.','; }; }; }; //--Zu konformer Keyword-Liste verarbeiten--// $keywords = substr($keywords, 0, -1); $keywords = str_replace(",",", ",$keywords); ///--Keywords auf Meta-Tag-Länge zurechtkürzen--/// //--Länge der Liste Prüfen--// if (strlen($keywords) > 199) { //--Liste abschneiden--// $keywords = substr($keywords,0,199); //--Letzes Komma suchen--// $letztes_wort = strrpos($keywords,','); //--Liste am letzten Komma abschneiden--// $keywords = substr($keywords,0,$letztes_wort); }; ///--Ausgabe der Keywords--// if ($textfeld == '') { echo '

Verarbeitete Datei:

'.$datei.'

'; }; if ($datei == '') { $textfeld = substr($textfeld,0,625).' ...'; echo '

Verarbeiteter Text:

'.$textfeld.'

'; }; echo'

Errechnete Keywords

'.$keywords.'

Diese Keywords geben zwar den Inhalt der Seite richtig wieder, ob sie aber tatsächlich passen, musst du selbst entscheiden.

Mein Tipp

Such Dir die 8 oder 9 thematisch passensten Keywords aus der vorgeschlagenen Liste heraus. Mehr Keywords braucht kein Mensch und Suchmaschinen erst recht nicht!
Wenn in der Liste vorgeschlagener Keywords Wörter stehen, die ich in meine Stoppwordliste aufnehmen sollte, dann verrate sie mir und ich ergänze die Liste. So kannst Du dazu beitragen, dass dieses Tool besser wird!

'; }; ///--Alles fertig :)--// echo'

Keyword-Generator






by Steffen Geyer | feel free to edit and distribute | no rights reserved :)

'; ?>