Problem beim Download einer XML-Datei

Phil_B

Grünschnabel
Hallo,

ich habe folgendes Problem:

Ich versuche eine Datei aus dem Internet herunterzuladen. Genauer gesagt, eine XML-Datei aus dem WoW Arsenal von Blizzard. Dort werden die Daten, die einen Spieler-Charakter beschreiben im XML-Format abgelegt.
Beispiel: http://eu.wowarmory.com/search.xml?searchQuery=egon&searchType=characters
Wenn man eine Suche dort durchführt, erhält man eine Liste von Suchergebnissen. Die Ergebnisse verweisen allerdings alle auf die gleiche XML-Datei, die über ihre Parameter aus der Blizzard Datenbank erstellt wird.
Beispiel: http://eu.wowarmory.com/character-sheet.xml?r=Arathor&n=Egon
Parameter: r = Server, n = Spielername.
Wenn ich also mit Rechtsklick auf einen der Ergebnis-Links klicke und "Ziel speichern unter ..." wähle, funktioniert alles wie gewünscht. Wenn ich selbiges in C# versuche, bekomme ich als Ergebnis die XML-Datei, aber in das XSL-Schema gepresst - also HTML-Quelltext.

Nun zu meinem eigentlichen Problem:
jegliche Versuche die Daten als kompfortables XML-File downzuloaden (Rechtschreibung?) mit Hilfe des HttpWebRequest / HttpWebResponse oder dem WebClient lieferten mir jedes mal die geparste XML-Datei als HTML-Quelltext.
Muss ich bei der Downloadanfrage evtl noch spezielle Header-Informationen senden?
Oder bin ich ganz und gar auf dem Holzweg?

Hoffe, ihr könnt mir Tipps geben :)
 
Hi

Zuerst:
Nicht pushen! Das solltest du nach 2 Jahren Mitgliedschaft bei tutorials.de wissen ;)

zum Problem:
Poste doch mal bitte deine Code, wie du versuchst, die Datei runterzuladen.
 
Also:
Der Link lautet: http://eu.wowarmory.com/character-sheet.xml?r=Arathor&n=Egon
Wenn ich wie gesagt rechts draufklicke und "Ziel speichern unter ..." wähle, lädt mein Browser die Datei im folgenden Format herunter:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/layout/character-sheet.xsl"?>
<page globalSearch="1" lang="de_de" requestQuery="r=Arathor&amp;n=Egon" requestUrl="/character-sheet.xml">
  <characterInfo>
    <character battleGroup="Blackout" charUrl="r=Arathor&amp;n=Egon" class="Magier" classId="8" faction="Allianz" factionId="0" gender="Männlich" genderId="0" guildName="" lastModified="28. Oktober 2008" level="70" name="Egon" prefix="" race="Gnom" raceId="7" realm="Arathor" suffix=""/>
usw.
Da die Datei sehr groß ist, habe ich mal nur die relevanten ersten Zeilen gepostet.
Code:
string url = "http://eu.wowarmory.com/character-sheet.xml?r=Arathor&n=Egon";
string localFileName = @"C:\testfile.xml";
WebClient client = new WebClient();
client.DownloadFile(url, localFileName);
byte[] bArrErgebnis = client.DownloadData(url);
string strErgebnis = client.DownloadString(url);
Stream stream = client.OpenRead(url);
Das ist mein C#-Code, den ich bislang ausprobiert habe. Keine der Methoden liefern mir das gewünschte Ergebnis (s.o.). Ich erhalte immer nur den geparsten HTML-Quelltext. :(
Die xsl-Deklaration ist vermutlich daran Schuld, dass ich nur HTML-Quelltext bekomme ... ?
Ich habe auch schon mit dem HttpWebRequest / HttpWebResponse gearbeitet und mein Glück mit den beiden Helfern versucht. Leider erhalte ich auch hierbei auch nur den geparsten HTML-Quelltext.
Muss ich evtl noch spezielle Header-Informationen senden, wenn ich die XML-Datei downloaden will?
 

Neue Beiträge

Zurück