Ich möchte also den Wert meiner Magickarten bestimmen indem ich automatisch mittels Scripting, Daten von einer Webseite abfrage. Dazu habe ich mich erstmal 2 Stunden hingesetzt und die Namen meiner Sammelkarten in eine Tabellenkalkulation abgetippt. Als Knauserer verwende ich privat dazu Openoffice Calc, das reicht für den alltäglichen Bedarf obwohl es leider nicht ganz an den Funktionsumfang von Excel herankommt.
In meiner Tabelle habe ich also den Namen meiner Karte und die Edition eingetragen weil ich gelesen habe dass letztere für den Wert der Karte eine Rolle spielen kann.
![OpenOffice Calc Tabellenblatt](https://i0.wp.com/www.c-rust.net/stromspielplatz/wp-content/uploads/2015/12/Tabelle-300x223.jpg?resize=300%2C223)
Jetzt mache ich mich auf die Suche nach einer geeigneten Seite die mir die Preisdaten liefern soll. Der Einfachheit halber suche ich mir eine Seite die die Daten in der URL übergibt da das für mich einfach zu lesen und sehr transparent ist. Dazu suche ich einfach auf der Seite nach eine x-beliebigen Karte.
In meinem Falls suche ich nach der Karte mit dem malerischen Namen “Holzbrecher” aus der Serie “Nemesis” und erhalte folgendes Ergebnis.
![Testabfrage](https://i1.wp.com/www.c-rust.net/stromspielplatz/wp-content/uploads/2015/12/Testabfrage-300x90.jpg?resize=300%2C90)
Wenn ich mir die übergebenen Parameter nach dem “/?” ansehe dann fällt mir gleich als erstes ins Auge dass der Kartenname im Klartext übergeben wird “cardName=Holzbrecher”. Da die Variablennamen sehr sprechend sind kann sehe ich außerdem dass idExpansion wohl die Serie angiebt, leider aber nicht im Klarnamen sondern diese in eine ID kodiert und die anderen Variablen Suchoptionen sind die man zusätzlich angeben könnte, die für mich aber ohne Belang sind. Außerdem fällt mir auf dass das Suchergebnis in einer schönen Tabelle geliefert wird was mit später das Parsen erleichtert.
Als nächstes muss ich mir also ansehen wie ich an Zuordnung Serienname zu idExpansion komme. Da mir die Seriennamen ja in der HTML Seite angezeigt werden sind diese irgendwo im HTML Quellcode enthalten. Um mir das genauer anzusehen lasse ich mir den Seitenquellcode von der Suchseite anzeigen. Das geht in allen Browsern ähnlich indem man irgendwo auf einen leeren Bereich rechtsklickt und “Seitenquelltext anzeigen” auswählt. Leider erhalte ich den Code fast unformattiert zurück (was nicht unüblich ist) und kann erstmal gar nichts erkennen. Man könnte jetzt mit einem vernünftigen HTML Editor eine Formattierung herstellen lassen, ich gehe aber einen noch einfacheren Weg über mein geliebtes Notepad++.
Ich kopiere also den gesamten Quellcode und füge ihn in ein neues, leeres Dokument ein.Ich suche dann nach dem Namen meiner Serie “Nemesis” und finde dass die Namen in Option Tags eingebettet sind die mir jeweils den Namen und die ID lieferen. (Jedem HTML Programmierer ist das natürlich schon vorher klar 😉 )
Jetzt muß man sich ein bißchen mit HTML auskennen. In HTML sind Formattierung und Elemente immer in Tags eingeschlossen. In meinem Beispiel schauen die Elemente für die auswähbaren Serien so aus:
<option value=”32″>Nemesis</option>
Es ist also immer <option value=”idExpansion”>Klaxtextname
Ich formatieren den Code jetzt etwas um indem ich mittels suchen Ersetzen nach jedem “</option>” einen Zeilenumbruch (\r\n) einfüge
![Umformatieren](https://i1.wp.com/www.c-rust.net/stromspielplatz/wp-content/uploads/2015/12/Suchenersetzen-300x162.jpg?resize=300%2C162)
Wenn ich jetzt durch mein Dokument scrolle sehe ich sehr schnell wo meine gewünschten Daten anfangen und wo sie aufhören. Ich lösche jetzt einfach alles vor dem ersten “<option” und=”” nach=”” dem=”” letzten=”” “<=”” option=””>” händisch raus und habe jetzt nur mehr meine Nutzdaten in meiner Datei. Dabei entferne ich auch gleich noch die erste Zeile “Alle” da diese offenbar ohne Nutzen für mich sein wird.
![Anfang meiner Nutzdaten](https://i2.wp.com/www.c-rust.net/stromspielplatz/wp-content/uploads/2015/12/Anfang-300x178.jpg?resize=300%2C178)
Jetzt muß ich sie nur noch in ein schönes Format bringen um es in meine Tabellenkalkulation importieren zu können. Dazu gehe ich noch ein paar mal mit Suchen&Ersetzen drüber: Ich Ersetze “<option value=”” durch einen Leerstring, “”>” durch einen Tabulator “\t” und “” wieder durch einen Leerstring und erhalte eine schöne Tabstop getrennte Textdatei.
![Tabstopp getrennter Text](https://i2.wp.com/www.c-rust.net/stromspielplatz/wp-content/uploads/2015/12/Tabstopp-getrennter-Text-260x300.jpg?resize=260%2C300)
Jetzt mache ich mit ein bißchen Excel-Magic (Jaja ich weiß, es sollte “Openoffice.Calc Magic” oder noch besser “Tabellenkalkulationsmagic”) Ich importiere diese Liste in meine Tabellenkalkulation in ein separates Blatt und füge in meiner Liste mittels “VERWEIS” die IDs zu meinen Klartextnamen ein.
![Importierte Zuordnungsliste](https://i0.wp.com/www.c-rust.net/stromspielplatz/wp-content/uploads/2015/12/Openoffice-Liste-190x300.jpg?resize=190%2C300)
![Liste mit Verweis](https://i2.wp.com/www.c-rust.net/stromspielplatz/wp-content/uploads/2015/12/Liste-mit-Verweis-281x300.jpg?resize=281%2C300)
Jetzt speichere ich das erstmal im Originalformat und dann gleich das erste Blatt nochmal als CSV und habe meine Daten für den nächsten Schritt aufbereitet. Das nächste Mal gehts weiter mit dem Script.