Daten aus HTML-Seite in MySQL importieren
Da diese Frage sowohl HTML als auch DBs behandelt war ich mir nicht sicher wohin es genau gehört, da es aber meiner Meinung nach mehr in Richtung DB gehört habe ich es in diesen Bereich getan. Sollte es falsch sein, verzeiht mir ^^ Zudem möchte ich noch erwähnen, dass das meine Kentnisse sich nur auf html beschränken aber mir klar ist, dass ich für diese Sache wohl was dazulernen werde Aber jeder hat ja von vorn angefangen und eine Starthilfe ist immer nett
Nun aber zum eigentlichen Thema. Ich möchte Daten aus einer html Datei welche auf einem Game-Server eines MMORPG liegt in eine MySQL Datenbank importieren. Diese Daten sollen dann auch durch MySQL (soweit es geplante Tasks kann) automatisch aktualisiert werden. Der Knackpunkt ist aber, dass man sich sozusagen erstmal einloggen muss um auf die echten Daten zuzugreifen. Hierfür habe ich die folgenden Links gesnifft:
Die 2 nötigen Schritte zum abrufen der Daten:
Login
http://nguild.cabalonline.com/CabalGuild/SecureLogin.aspx?EncVal=h296vt ...
Memberinfo
http://nguild.cabalonline.com/CabalGuild/Board/GetMember.aspx?guildno=1 ...
Sobald der 1. Link aufgerufen wurde, kann man beliebig oft den 2. Link aufrufen, auch wenn der 1. geschlossen ist (da der wohl ein cookie oder irgendwas speichert). Nach dem löschen der temporären Daten geht es jedenfalls nicht mehr.
Die Memberinfo an sich besteht wie man im Quelltext sehen kann aus mehreren Tabellen.
Daher eben die folgende Problemstellung:
Ist es möglich eine Abfrage zu erstellen, welche die Daten aus der Memberinfo rausnimmt und in eine MySQL Datenbank reinkopiert?
Die Memberinfo beispielsweise viertelstündlich oder stündlich je nachdem was möglich ist aktualisiert?
Die MySQL Datenbank liegt auf ohost.de. Wenn es bei denen nicht möglich ist, aber bei anderen SQL Hostern die 24/7 erreichbar und kostenlos sind bin ich auch bereit es da zu realisieren. Da ich dann später aufbauend auf diese Datenbank eine Art "Wer ist gerade ingame Online" Übersicht machen will und dann noch einen Abgleich der IngameNamen mit dem Forennickname machen möchte. Dann soll noch eine Art aktivitätsübersicht hinzukommen. Aber erstmal geht es um das Grundgerüst, die HTML Daten in eine DB zu packen um diese für später Abfragen wieder nutzen zu können.
Vielen Dank im Voraus für das Lesen des Beitrages und mögliche Hilfen!
Gruß
Seelbreaker
Nun aber zum eigentlichen Thema. Ich möchte Daten aus einer html Datei welche auf einem Game-Server eines MMORPG liegt in eine MySQL Datenbank importieren. Diese Daten sollen dann auch durch MySQL (soweit es geplante Tasks kann) automatisch aktualisiert werden. Der Knackpunkt ist aber, dass man sich sozusagen erstmal einloggen muss um auf die echten Daten zuzugreifen. Hierfür habe ich die folgenden Links gesnifft:
Die 2 nötigen Schritte zum abrufen der Daten:
Login
http://nguild.cabalonline.com/CabalGuild/SecureLogin.aspx?EncVal=h296vt ...
Memberinfo
http://nguild.cabalonline.com/CabalGuild/Board/GetMember.aspx?guildno=1 ...
Sobald der 1. Link aufgerufen wurde, kann man beliebig oft den 2. Link aufrufen, auch wenn der 1. geschlossen ist (da der wohl ein cookie oder irgendwas speichert). Nach dem löschen der temporären Daten geht es jedenfalls nicht mehr.
Die Memberinfo an sich besteht wie man im Quelltext sehen kann aus mehreren Tabellen.
Daher eben die folgende Problemstellung:
Ist es möglich eine Abfrage zu erstellen, welche die Daten aus der Memberinfo rausnimmt und in eine MySQL Datenbank reinkopiert?
Die Memberinfo beispielsweise viertelstündlich oder stündlich je nachdem was möglich ist aktualisiert?
Die MySQL Datenbank liegt auf ohost.de. Wenn es bei denen nicht möglich ist, aber bei anderen SQL Hostern die 24/7 erreichbar und kostenlos sind bin ich auch bereit es da zu realisieren. Da ich dann später aufbauend auf diese Datenbank eine Art "Wer ist gerade ingame Online" Übersicht machen will und dann noch einen Abgleich der IngameNamen mit dem Forennickname machen möchte. Dann soll noch eine Art aktivitätsübersicht hinzukommen. Aber erstmal geht es um das Grundgerüst, die HTML Daten in eine DB zu packen um diese für später Abfragen wieder nutzen zu können.
Vielen Dank im Voraus für das Lesen des Beitrages und mögliche Hilfen!
Gruß
Seelbreaker
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 112516
Url: https://administrator.de/contentid/112516
Ausgedruckt am: 22.11.2024 um 10:11 Uhr
1 Kommentar
Hi,
So einfach ist das nicht.
Da benötigst du schon ein bischen programmier Erfahrung. Und zwar würde ich das als PHP "Programmierer" in PHP lösen.
Es kommt mir jetzt gerade nur eine aufwendige Methode in den Sinn:
1. Du rufst über Cron Job die erste Seite auf. Musst ausprobieren ob dies mit dem Cookie Funktionert
2. Du speicherst von der zweiten Seite den Quellcode in dem du die seite als Textformat herunterlädst (http://www.selfphp.de/forum/showthread.php?t=14322) sollte ein beispiel script stehen)
3. Durch ein PHP Script welches auch wieder von CronJob ausgeführt wird, lädst du die zuvor gespeicherte Datei ein und durchvorstet den Quellcode nach gewissen Abschnitten und schneidest dir dann die gewünschten Daten dur str_substring heraus.
4. Die substring mit einer SQL Query in die DB schreiben
Selbstverständlich kannst du dies auch mit asp oder so programmieren. Da kann ich dir aber nicht weiterhelfen.
So einfach mal schnell durch den Kopf gelassen sollte das mit einigen Umwegen und schwirigkeiten funktionieren.
Ohne Garantie!
Gruss
Scan
So einfach ist das nicht.
Da benötigst du schon ein bischen programmier Erfahrung. Und zwar würde ich das als PHP "Programmierer" in PHP lösen.
Es kommt mir jetzt gerade nur eine aufwendige Methode in den Sinn:
1. Du rufst über Cron Job die erste Seite auf. Musst ausprobieren ob dies mit dem Cookie Funktionert
2. Du speicherst von der zweiten Seite den Quellcode in dem du die seite als Textformat herunterlädst (http://www.selfphp.de/forum/showthread.php?t=14322) sollte ein beispiel script stehen)
3. Durch ein PHP Script welches auch wieder von CronJob ausgeführt wird, lädst du die zuvor gespeicherte Datei ein und durchvorstet den Quellcode nach gewissen Abschnitten und schneidest dir dann die gewünschten Daten dur str_substring heraus.
4. Die substring mit einer SQL Query in die DB schreiben
Selbstverständlich kannst du dies auch mit asp oder so programmieren. Da kann ich dir aber nicht weiterhelfen.
So einfach mal schnell durch den Kopf gelassen sollte das mit einigen Umwegen und schwirigkeiten funktionieren.
Ohne Garantie!
Gruss
Scan