IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

WebBrowser, code source de la page affiché différent de celui téléchargé


Sujet :

Windows Forms

  1. #1
    Membre à l'essai

    Profil pro
    Inscrit en
    Mars 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 28
    Points : 22
    Points
    22
    Par défaut WebBrowser, code source de la page affiché différent de celui téléchargé
    Bonjour,
    En devellopant une petite application je me heurte à un problème assez bizarre.
    Mon application doit chercher le contenu d'une page web sur un site web pour en extraire des informations. Cependant la source que je telecharge est différente de celle que je souhaite.
    Ceci n'est pas très clair mais je vais tenter de m'expliquer.
    Je tente d'obtenir la source de cette page par exemple:
    http://eu.wowarmory.com/character-sh...derfist&n=Deer
    Lorsque j'affiche la source (clic droit -> afficher source) avec n'importe quel navigateur internet ou même un petit navigateur fais en C# à l'aide d'un controleur de type WebBrowser j'obtient un beau fichier xml comme celui ci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    <?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="/layout/character-sheet.xsl"?><page globalSearch="1" lang="fr_fr" requestUrl="/character-sheet.xml">
      <characterInfo>
        <character battleGroup="Misery" charUrl="r=Boulderfist&amp;n=Deer" class="Druide" classId="11" faction="Horde" factionId="1" gender="(M)" genderId="0" guildName="Revelations" guildUrl="r=Boulderfist&amp;n=Revelations&amp;p=1" lastModified="24 mai 2008" level="70" name="Deer" prefix="" race="Tauren" raceId="6" realm="Boulderfist" suffix="">
          <arenaTeams>
            <arenaTeam battleGroup="Misery" faction="Horde" factionId="1" gamesPlayed="4" gamesWon="0" lastSeasonRanking="0" name="Point Takers" ranking="0" rating="1445" realm="Boulderfist" realmUrl="b=Misery&amp;r=Boulderfist&amp;ts=2&amp;t=Point+Takers&amp;ff=realm&amp;fv=Boulderfist&amp;select=Point+Takers" seasonGamesPlayed="4" seasonGamesWon="0" size="2" url="r=Boulderfist&amp;ts=2&amp;t=Point+Takers&amp;select=Point+Takers">
              <emblem background="ff000000" borderColor="ffebede7" borderStyle="5" iconColor="ff7b807a" iconStyle="39"/>
              <members>
                <character battleGroup="" charUrl="r=Boulderfist&amp;n=Zulan" class="Chasseur" classId="3" contribution="1459" gamesPlayed="0" gamesWon="0" gender="(M)" genderId="0" guild="Revelation" guildId="355378" guildUrl="r=Boulderfist&amp;n=Revelation&amp;p=1" name="Zulan" race="Troll" raceId="8" seasonGamesPlayed="3" seasonGamesWon="0" teamRank="0"/>
                <character battleGroup="" charUrl="r=Boulderfist&amp;n=Deer" class="Druide" classId="11" contribution="1445" gamesPlayed="0" gamesWon="0" gender="(M)" genderId="0" guild="Revelations" guildId="355788" guildUrl="r=Boulderfist&amp;n=Revelations&amp;p=1" name="Deer" race="Tauren" raceId="6" seasonGamesPlayed="4" seasonGamesWon="0" teamRank="1"/>
     
              </members>
            </arenaTeam>
          </arenaTeams>
        </character>
        <characterTab>
          <talentSpec treeOne="0" treeThree="14" treeTwo="47"/>
          <buffs>
            <spell effect="Augmente l'Armure de 340, les caractéristiques de 14 et les résistances de 25." icon="spell_nature_regeneration" name="Marque du fauve"/>
            <spell effect="Chaque attaque de mêlée a une chance de faire entrer le druide dans un état d'Idées claires." icon="spell_nature_crystalball" name="Augure de clarté"/>
     
            <spell effect="Inflige 25 points de dégâts de Nature aux attaquants." icon="spell_nature_thorns" name="Epines"/>
          </buffs>
          <debuffs/>
          <pvp>
            <lifetimehonorablekills value="888"/>
            <arenacurrency value="248"/>
          </pvp>
          <professions>
            <skill key="alchemy" max="375" name="Alchimie" value="371"/>
     
            <skill key="herbalism" max="375" name="Herboristerie" value="390"/>
          </professions>
          <title value=""/>
          <knownTitles/>
          <characterBars>
            <health effective="9517"/>
            <secondBar casting="28" effective="4700" notCasting="94" type="m"/>
          </characterBars>
          <baseStats>
     
            <strength attack="542" base="83" block="-1" effective="281"/>
            <agility armor="892" attack="-1" base="66" critHitPercent="18.80" effective="446"/>
            <stamina base="87" effective="563" health="5450" petBonus="-1"/>
            <intellect base="142" critHitPercent="4.03" effective="174" mana="2330" petBonus="-1"/>
            <spirit base="139" effective="153" healthRegen="13" manaRegen="94"/>
            <armor base="3819" effective="4159" percent="28.26" petBonus="-1"/>
          </baseStats>
          <resistances>
            <arcane petBonus="-1" value="25"/>
     
            <fire petBonus="-1" value="25"/>
            <frost petBonus="-1" value="25"/>
            <holy petBonus="-1" value="0"/>
            <nature petBonus="-1" value="35"/>
            <shadow petBonus="-1" value="25"/>
          </resistances>
          <melee>
            <mainHandDamage dps="149.9" max="516" min="384" percent="0" speed="3.00"/>
            <offHandDamage dps="39.7" max="80" min="79" percent="0" speed="2.00"/>
     
            <mainHandSpeed hastePercent="0.00" hasteRating="0" value="3.00"/>
            <offHandSpeed hastePercent="0.00" hasteRating="0" value="2.00"/>
            <power base="542" effective="1104" increasedDps="78.0"/>
            <hitRating increasedHitPercent="8.88" value="140"/>
            <critChance percent="14.32" plusPercent="1.36" rating="30"/>
            <expertise additional="3" percent="0.75" rating="15" value="3"/>
          </melee>
          <ranged>
            <weaponSkill rating="0" value="-1"/>
     
            <damage dps="0.0" max="0" min="0" percent="0" speed="0.00"/>
            <speed hastePercent="0.00" hasteRating="0" value="0.00"/>
            <power base="436" effective="998" increasedDps="71.0" petAttack="-1.00" petSpell="-1.00"/>
            <hitRating increasedHitPercent="8.88" value="140"/>
            <critChance percent="6.20" plusPercent="1.36" rating="30"/>
          </ranged>
          <spell>
            <bonusDamage>
              <arcane value="10"/>
     
              <fire value="10"/>
              <frost value="10"/>
              <holy value="10"/>
              <nature value="10"/>
              <shadow value="10"/>
              <petBonus attack="-1" damage="-1" fromType=""/>
            </bonusDamage>
            <bonusHealing value="29"/>
            <hitRating increasedHitPercent="0.00" value="0"/>
     
            <critChance rating="0">
              <arcane percent="4.03"/>
              <fire percent="4.03"/>
              <frost percent="4.03"/>
              <holy percent="4.03"/>
              <nature percent="4.03"/>
              <shadow percent="4.03"/>
            </critChance>
            <penetration value="0"/>
     
            <manaRegen casting="28.00" notCasting="94.00"/>
          </spell>
          <defenses>
            <armor base="3819" effective="4159" percent="28.26" petBonus="-1"/>
            <defense decreasePercent="0.00" increasePercent="0.00" plusDefense="0" rating="0" value="350.00"/>
            <dodge increasePercent="1.37" percent="29.83" rating="26"/>
            <parry increasePercent="0.00" percent="0.00" rating="0"/>
            <block increasePercent="0.00" percent="0.00" rating="0"/>
            <resilience damagePercent="2.03" hitPercent="1.01" value="40.00"/>
     
          </defenses>
          <items>
            <item durability="62" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_helmet_58" id="28732" maxDurability="70" permanentenchant="3003" randomPropertiesId="0" seed="1155483397" slot="0"/>
            <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_jewelry_necklace_06" id="28745" maxDurability="0" permanentenchant="0" randomPropertiesId="0" seed="1892107758" slot="1"/>
            <item durability="59" gem0Id="30574" gem1Id="30601" gem2Id="0" icon="inv_shoulder_12" id="28129" maxDurability="70" permanentenchant="2841" randomPropertiesId="0" seed="0" slot="2"/>
            <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_shirt_12" id="5107" maxDurability="0" permanentenchant="0" randomPropertiesId="0" seed="1811607132" slot="3"/>
            <item durability="104" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_chest_leather_06" id="28601" maxDurability="120" permanentenchant="0" randomPropertiesId="0" seed="1935080682" slot="4"/>
            <item durability="31" gem0Id="24061" gem1Id="24061" gem2Id="0" icon="inv_belt_26" id="28750" maxDurability="40" permanentenchant="0" randomPropertiesId="0" seed="2010415147" slot="5"/>
            <item durability="64" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_pants_mail_21" id="28347" maxDurability="75" permanentenchant="0" randomPropertiesId="0" seed="0" slot="6"/>
     
            <item durability="51" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_boots_plate_06" id="30674" maxDurability="60" permanentenchant="2649" randomPropertiesId="0" seed="2119766306" slot="7"/>
            <item durability="35" gem0Id="24033" gem1Id="0" gem2Id="0" icon="inv_bracer_07" id="33893" maxDurability="40" permanentenchant="2647" randomPropertiesId="0" seed="0" slot="8"/>
            <item durability="33" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_gauntlets_28" id="30644" maxDurability="40" permanentenchant="684" randomPropertiesId="0" seed="1866756760" slot="9"/>
            <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_jewelry_ring_47" id="28649" maxDurability="0" permanentenchant="0" randomPropertiesId="0" seed="1149729701" slot="10"/>
            <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_jewelry_ring_23" id="25811" maxDurability="0" permanentenchant="0" randomPropertiesId="0" seed="855575667" slot="11"/>
            <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_misc_armorkit_11" id="27920" maxDurability="0" permanentenchant="0" randomPropertiesId="0" seed="0" slot="12"/>
            <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_misc_stonetablet_11" id="25937" maxDurability="0" permanentenchant="0" randomPropertiesId="0" seed="529031629" slot="13"/>
            <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_misc_cape_10" id="28529" maxDurability="0" permanentenchant="368" randomPropertiesId="0" seed="1407346298" slot="14"/>
            <item durability="117" gem0Id="0" gem1Id="0" gem2Id="0" icon="inv_staff_56" id="29359" maxDurability="120" permanentenchant="2670" randomPropertiesId="0" seed="0" slot="15"/>
     
            <item durability="0" gem0Id="0" gem1Id="0" gem2Id="0" icon="spell_nature_spiritwolf" id="28064" maxDurability="0" permanentenchant="0" randomPropertiesId="0" seed="2232152" slot="17"/>
          </items>
        </characterTab>
      </characterInfo>
    </page>
    Et c'est ça que je souhaite récupérer.
    Cependant lorsque je télécharge la source grâce à certaine fonction c# comme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    string a = "http://eu.wowarmory.com/character-sheet.xml?r=Boulderfist&n=Deer";
    this.webBrowser1.Navigate(a);
     
    ...
    ...
     
    private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)
            {
                this.textBox1.Text = this.webBrowser1.DocumentText;//On affiche le contenu de la source dans une textbox
            }
    ou grace aux classes WebRequest ou WebClient, j'obtient une autre source qui ressemble à ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <?xml-stylesheet type="text/xsl" href="/layout/character-sheet.xsl">
    <html>
    <head>
    <link href="favicon.ico" rel="shortcut icon">
    <title>The World of Warcraft Armory</title>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
    <meta content="The World of Warcraft Armory is a vast searchable database of information for World of Warcraft - taken straight from the real servers. It is the most comprehensive and up-to-date database on the characters, arena teams, guilds, items, dungeons, raids, bosses, and faction rewards of World of Warcraft in existence." name="description">
    <script src="/shared/global/third-party/detection.js" type="text/javascript"></script>
    <style media="screen, projection" type="text/css">
        @import "css/master.css";
    	@import "css/en_us/language.css";
    </style>
    <script type="text/javascript">
    //
    if (is_moz) {
    } else if (is_ie7) {
        document.write('<link rel="stylesheet" type="text/css" media="screen, projection" href="css/ie7.css" />');
    }	
    else if (is_ie6) {
        document.write('<link rel="stylesheet" type="text/css" media="screen, projection" href="css/ie.css" />');
     
         try {
    	  document.execCommand("BackgroundImageCache", false, true);
    	} catch(err) {}
    }	
    else if (is_opera) {
        document.write('<link rel="stylesheet" type="text/css" media="screen, projection" href="css/opera.css" />');
    }
    if (is_mac && !is_moz) {
       	document.write('<link rel="stylesheet" type="text/css" media="screen, projection" href="css/opera-mac.css" />');
    }
     
    if (is_safari && is_mac) {
    	if (is_safari3)
    	    document.write('<link rel="stylesheet" type="text/css" media="screen, projection" href="css/safari3.css" />');
       document.write('<link rel="stylesheet" type="text/css" media="screen, projection" href="css/safari.css" />');
    } else if (is_safari) {
        document.write('<link rel="stylesheet" type="text/css" media="screen, projection" href="css/safari-pc.css" />');
    }
     
    //
    </script>
    <div id="containerJavascript"></div>
    </head>
    <body>
    ....
    ....
    ....
    Ce listing continu sur 2000 lignes contre les 135 lignes du fichier précédent.
    Je n'arrive pas à comprendre pourquoi lorsque j'affiche la source via le navigateur j'obtient quelque chose de différent, et j'aimerai savoir si il existait une fonction qui me permettrai d'obtenir la source via le menu contextuelle du control WebBrowser.
    Car j'imagine que la source de 2000 lignes téléchargée est là bonne et que la version largement raccourci en xml est une interprétation du navigateur ou control.
    Je vous remercie d'avance si vous avez quelques éléments de réponse.

    Bye

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    C'est une pratique courante : une transformation XSL.

    En gros, le navigateur récupère un XML depuis le site. Il ouvre cet XML et trouve la ligne "<?xml-stylesheet type="text/xsl" href="/layout/character-sheet.xsl"?>" qui lui spécifie qu'il faut effectuer une transformation avant d'afficher cet XML à l'écran. Il télécharge donc la feuille de style XSLT, applique la transformation qui retourne le HTML affiché sur l'écran.

    Un navigateur classique donne bien comme source le XML.

    Çà devrait être le cas également si la page est lu via WebClient : il n'y a aucune raison qu'il applique automatiquement la transformation.

  3. #3
    Membre à l'essai

    Profil pro
    Inscrit en
    Mars 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 28
    Points : 22
    Points
    22
    Par défaut
    D'accord, je ne connaissais pas cette technique. Merci.
    Sinon existe t'il un moyen en c# de recuperer seulement le fichier xml et non pas le resultat de la transformation par XSL sheet?

    Edit: Oups j'avais mal lu la réponse...
    Malheureusement comme je l'ai dis avant, même en chargeant la page à l'aide d'un webclient j'obtient toujours le xml transformé...
    Que ce soit en utilisant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ...
    this._webclient.DownloadFile(mon_url,"out.xml");
    this._webclient.Dispose();
    ...
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    ...
    StreamReader sr = new
    StreamReader(this._webclient.OpenRead(mon_url));
    this.textBox1.Text = sr.ReadToEnd();
    this._webclient.Dispose();
    ...
    ou même

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    WebRequest req = WebRequest.Create(mon_url);
    WebResponse response = req.GetResponse();
    StreamReader sr = new StreamReader(response.GetResponseStream());
    this.textBox1.Text = sr.ReadToEnd();
    Je suis perdu

  4. #4
    Membre à l'essai

    Profil pro
    Inscrit en
    Mars 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 28
    Points : 22
    Points
    22
    Par défaut
    Décidement ça ne veut pas marcher...
    Même avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    byte[] page = this._webclient.DownloadData(mon_url);
    FileStream o = File.Create("out.xml");
    o.Write(page, 0, page.Length);
    o.Close();
    De plus quand je télécharge la page à l'aide d'un gestionnaire de téléchargement comme flashget, j'ai toujours le fichier transformé...

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 14
    Points : 10
    Points
    10
    Par défaut Element de solution
    Bonjour,

    confronté moi aussi à ce problème, j'ai trouvé ma réponse ici :

    http://www.geekpedia.com/tutorial179...in-Csharp.html

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    using System.Net;
    using System.IO;
    using System.Threading;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    // The thread inside which the download happens
    private Thread thrDownload;
    // The stream of data retrieved from the web server
    private Stream strResponse;
    // The stream of data that we write to the harddrive
    private Stream strLocal;
    // The request to the web server for file information
    private HttpWebRequest webRequest;
    // The response from the web server containing information about the file
    private HttpWebResponse webResponse;
    // The progress of the download in percentage
    private static int PercentProgress;
    // The delegate which we will call from the thread to update the form
    private delegate void UpdateProgessCallback(Int64 BytesRead, Int64 TotalBytes);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
    private void Download()
    {
       using (WebClient wcDownload = new WebClient())
       {
          try
          {
             // Create a request to the file we are downloading
             webRequest = (HttpWebRequest)WebRequest.Create(txtUrl.Text);
             // Set default authentication for retrieving the file
             webRequest.Credentials = CredentialCache.DefaultCredentials;
             // Retrieve the response from the server
             webResponse = (HttpWebResponse)webRequest.GetResponse();
             // Ask the server for the file size and store it
             Int64 fileSize = webResponse.ContentLength;
     
             // Open the URL for download
             strResponse = wcDownload.OpenRead(txtUrl.Text);
             // Create a new file stream where we will be saving the data (local drive)
             strLocal = new FileStream(txtPath.Text, FileMode.Create, FileAccess.Write, FileShare.None);
     
             // It will store the current number of bytes we retrieved from the server
             int bytesSize = 0;
             // A buffer for storing and writing the data retrieved from the server
             byte[] downBuffer = new byte[2048];
     
             // Loop through the buffer until the buffer is empty
             while ((bytesSize = strResponse.Read(downBuffer, 0, downBuffer.Length)) > 0)
             {
                // Write the data from the buffer to the local hard drive
                strLocal.Write(downBuffer, 0, bytesSize);
                // Invoke the method that updates the form's label and progress bar
                this.Invoke(new UpdateProgessCallback(this.UpdateProgress), new object[] { strLocal.Length, fileSize });
             }
          }
          finally
          {
             // When the above code has ended, close the streams
             strResponse.Close();
             strLocal.Close();
          }
       }
    }
    Nicolas

  6. #6
    Candidat au Club
    Inscrit en
    Janvier 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Ta méthode est bonne, il faut juste préciser à ta WebRequest un UserAgent recent. Car seul les dernier navigateur récupère l'Xml et le transforme, les anciens récupéraient la page déja transformé ce qui est le cas si tu ne précise pas de UserAgent.

    ex:

    MaWebRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0)";


    Cependant moi je me heurte à un autre problème. La langue du fichier xml retourné. Lorsque j entre l url dans un navigateur et que j affiche la source, dans l xml au debut je peux voir " lang=fr_fr" et lorsque j execute la meme requete via le code avec une WebRequest, l'Xml retourné contient " lang=en_us". Bref j'arrive pas à le faire récupéré la version fr de cette XML. Si quelqu un à une idée ?

Discussions similaires

  1. Afficher le code source d'une page Web
    Par despeludo dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 11/08/2009, 16h47
  2. Affiche le code source d'une page
    Par aurelientp dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 25/08/2008, 09h27
  3. Réponses: 9
    Dernier message: 04/03/2008, 11h04
  4. Réponses: 2
    Dernier message: 29/02/2008, 16h20
  5. Safari affiche le code source de ma page html
    Par yep007 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 13/10/2007, 11h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo