Recherche d'une valeur dans un site web
bonjour, j'essaye de développer un script qui me permettrai d'extraire une valeur d'une page web, afin de calculer quelques statistiques...
la page web en question est le site d'un jeu, où il est indiqué le nombre de victoires/défaites d'un joueur, vous comprendrez mieux en le voyant de vos yeux : mon profil :
http://eu.battle.net/sc2/fr/profile/334030/1/Mazuno/
je ne peux évidemment pas éditer le code source donc je lance mon script à l'aide de greasemonkey. j'ai fait des petits tests avec des alert("abc") afin de vérifier que le script se lance correctement
mon objectif final serait de calculer le pourcentage de victoires par rapport au nombre de parties jouées, donc de diviser "victoires en ligues" par "nombre de parties en ligue"
et d'afficher le résultat à l'écran ou même de l'écrire en dessous.
je vous passe le code source du site correspondant à cette section :
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 32 33 34 35
| <div class="module-right" id="career-stats">
<div class="module-title">
<h3 class="title-graph">Stats. de la carrière</h3>
</div>
<div class="module-body">
<h4 style="margin: 0">Victoires en ligue</h4>
<h2>101</h2>
<br />
<h4>Parties jouées</h4>
<ul>
<li>
<span>168</span>
Parties en ligue
</li>
<li>
<span>10</span>
Parties personnalisées
</li>
<li>
<span>2</span>
Coop contre lIA
</li>
<li>
<span>0</span>
Chacun pour soi
</li>
</ul>
</div>
</div> |
je ne suis pas très a l'aise en JS mais j'ai pu écrire ce bout de code déjà pour essayer d'extraire le nombre de victoires, une fois que je maitriserai le principe, cela devrai être plutôt facile de faire les calculs nécessaires...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
// ==UserScript==
// @name mazuno
// @include http://eu.battle.net/sc2/fr/profile/*
// ==/UserScript==
(function() {
var divis=document.getElementById('career-stats');
var mes_div=divis.getElementsByTagName("div");
var valeur=mes_div[1].childNodes[0].nodeType;
alert(divis); //mes alertes servent à vérifier que le code s'exécute
alert(mes_div);
alert(valeur); // ici on m'affiche 3, donc mon node correspond bien à du texte ...
}
)(); |
j'ai éssayé toutes les combinaisons de "nodeValue" "nodeText" "innerHTML", etc... sans succes pour arriver à afficher le texte écrit à cet endroit, et donc le nombre de victoires..
voila si quelqu'un se sent le cœur de m'indiquer comment procéder pour arriver à retourner le nombre de parties et le nombre de victoires, avec ça j'arriverai (j'espère ^^) à finaliser mon script.
j'espère avoir été suffisamment clair sur ce que je voulais faire :?
je vous remercie d'avance et vous souhaite une bonne après midi ;)