Parser une page HTML pour récupérer certaines données.
Bonjour,
Toujours dans le cadre de mon projet d'application tournant autour du jeu Hearthstone, j'essaie de réaliser un parseur pour importer les decks issus de certains sites.
Je vous donne ici le code qui devrait me permettre de récupérer les informations adéquates issues d'un deck pris au hasard. Evidemment, mon code ne fonctionne pas et semble déclencher une boucle infinie (et j'ignore pourquoi).
Code:
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
| PROCEDURE Parse_HTML()
sUrl est une chaîne = "http://www.hearthstone-decks.com/deck/voir/sc2wfr-chaman-rang-5-to-legend-6958"
sDocXML est une chaîne
nCartes est un entier
sCarte est une chaîne
sDeck est une chaîne = ""
SI HTTPRequête(sUrl) ALORS
sDocXML = HTTPDonneRésultat(httpRésultat)
SI XMLDocument("DocXML", sDocXML) = Vrai ALORS
RequêteXPATH est une chaîne
RequêteXPATH = "//entry/a"
SI XMLExécuteXPath("DocXML", RequêteXPATH) = Vrai ALORS
TANTQUE XMLTrouve("DocXML") ET XMLNomElément("DocXML") = "a"
LIB_SansNom1 = "Parcours de " + XMLDonnée("DocXML")
SI XMLDonnée("DocXML","nb_card") = "1" OU XMLDonnée("DocXML","nb_card") = "2" ALORS
nCartes = XMLDonnée("DocXML","nb_card")
sCarte = XMLDonnée("DocXML")
sDeck = sDeck + nCartes + "x " + sCarte + RC
FIN
XMLSuivant("DocXML")
FIN
SINON
Erreur("La requête n'a pas été exécutée.")
FIN
SINON
Erreur("La page n'a pas été convertie en XML.")
FIN
XMLTermine("DocXML")
FIN
Info(sDeck) |
Pouvez-vous m'aider à voir ce qui cloche ?
EDIT : apparemment, le document XML ne se crée pas. Pourtant, ça semblait être la bonne méthode mais je suppose que le code HTML est trop complexe pour une conversion en XML simple.