php und wikipedia

B

Big_Johann

Guest
Hallo leute

ich habe folgendes problem ...

ich versuche seit tagen ein script zu schreiben welches folgendes erledigt krieg es aber nicht hin und vielleicht ist hier jemand der mal die 5 zeilen code hinkriegt

also das script soll die datei title.txt oeffnen
dann den ersten satz ( such wort ) auslesen
und ueberprüfen ob der begriff bei wikipedia vorhanden ist
dann dort die passende ergebnisseite in einem neuen fenster aufrufen

das auslesen der datei klappt aber ich kriege es nicht hin den artikikel bei wikipedia aufzurufen

für hilfe waere ich sehr dankbar

also beispiel :

in der txt steht oben

John fogerty dieses soll nun als suchbegriff an wikipedia gesendet werden
und alle relevanten daten angezeigt werden.

gruss johann
 
hier kannst du dir nen datenbankdump downloaden: http://de.wikipedia.org/wiki/Wikipedia:Download
-> danach kannst du auslesen, ob das lemma bereits in wiki vorhanden ist.
(ist allerdings immer nur so aktuell, wie das letzte angebotene backup, aber dafür ressourcenschondender für wikipedia als wenn jeder die seite in echtzeit parsen würde..)
 
danke für die antwort

aber es hilft mir nix wenn ich diese anwendung auf meinem pc habe dann kann ich auch die
suche von wikipedia nutzen es geht um die verlinkung von webseiten

gruss johann

 
ja, schon klar: du musst den wikipedia-dump natürlich bei dir auf dem server hochladen.
-> dann kannst du per script auslesen, ob ein lemma schon vorhanden ist und im positivfall zu der entsprechenden wikipediaseite weiterleiten lassen..
 
Die ganze Wiki-DB ist etwas zu gross finde ich, lade doch einfach die entsprechende Wikipedia-Seite on-the-fly herunter per PHP und dann kannst du mit Regulären Ausdrücken den Inhalt rausfilertern...

Kommt aber etwas darauf an, wie viel Abfragen du machst. Wenn du täglich tausende Abfragen machst, vielleicht doch lieber die DB runterladen.
 
habe jetzt schon > 1 jahr nicht mehr mit wikipedia gearbeite, aber ich glaube mich zu erinnern, dass es eine extra tabelle mit den lemmatiteln (also ohne den ganzen text) zum downloaden gab.
-> die reine titel-datenbank war also nicht wirklich groß..
 
Nein bei 500'000 Artikeln ist eine Titeldatenbank ganz okay. Einfach ein Index setzen und das ganze wird flott gehen.

http://dumps.wikimedia.org/ Hier findest du XML-Daten, dort wählst du ein wiki-stand aus und dann hats dort sowas wie "List of page titles" oder so. Das musst man dann entzippen, ..... vielleicht versuchst du das mal...
 
Hallo Johann,

da ich nicht viel Zeit habe hier nur der Link und eine kurze Erklärung zur Wikipedia API:
http://de.wikipedia.org/wiki/Wikipedia:Dat...ragen/Query_API

Du kannst über folgenden Link die Info zu einer speziellen Seite abrufen:
http://de.wikipedia.org/w/query.php?what=info&titles=John Fogerty
Ist die "id" im Knoten "page" leer wurde der Titel nicht gefunden.

Achte beim Titel auf die Schreibweise - die Query API verfügt afaik über keine "Vertipperkorrektur". Also am Besten die Titel immer in der Form "Such_Wort" angeben. "_" für ein Leerzeichen und jeweils die Anfangsbuchstaben groß.

Bei der Query API kannst du auch die Inhalte rausziehen (in der URL what=content angeben). Das Ausagbeformat kannst du ebenfalls bestimmen (format=php|json|xml...). Steht aber alles im ersten Link erklärt.

Die Inhalte auf Figufi.de sind ebenfalls über die Query API eingebunden. Läuft momentan ganz gut, alle 2 Tage erfolgt ein Datenbankupdate indem alle geänderten Filme über die Query API in die interne Datenbank eingelesen werden.

Grüße,
Adrian
 
Zurück
Oben