Viser par style
Le
Gloops

Bonjour tout le monde,
Sur une page web, je vais avoir besoin d'atteindre un élément qui n'e=
st
connu que par le style css qui lui est appliqué.
Si je ne m'abuse, il n'y a que Xpath pour faire ça ?
Sur une page web, je vais avoir besoin d'atteindre un élément qui n'e=
st
connu que par le style css qui lui est appliqué.
Si je ne m'abuse, il n'y a que Xpath pour faire ça ?
Et pour les gens qui n'utilisent XPath que de temps en temps, j'ai
trouvé un truc génial : l'extension XPath checker, pour Firefox.
ça ne dispense pas d'apprendre la syntaxe, sinon le résultat est à XPath
ce que les macros enregistrées sous Word sont à VBA : ça marche, ma is
pour aller de Viry-Châtillon à Ris-Orangis on passe par Londres et Ro me,
avec les bagages qui vont avec.
ouaip !
très simple :
//
https://developer.mozilla.org/fr/docs/Introduction_à_l'utilisation_de_XPath_avec_JavaScript
//
https://developer.mozilla.org/fr/docs/Introduction_à_l'utilisation_de_XPath_avec_JavaScript#Constantes_d.C3.A9finies_de_XPathResult
var iterator =
document.evaluate("//div[@id='navbar']/ul[@class='menu']/li", document,
null, XPathResult.ORDERED_NODE_ITERATOR_TYPE, null);
try {
var thisNode = iterator.iterateNext();
while (thisNode) {
thisNode.addEventListener('click', displayPage, false);
thisNode = iterator.iterateNext();
}
} catch (e) {
console.log( "Erreur : L'arbre du document a été modifié pendant
l'itération " + e );
}
Ouaip, c'est fait, merci.
Maintenant, je vais tester ça sur un document qui n'a pas une structure
XHTML propre ...
HtmlAgilityPack n'a pas été jojo sur la page d'index, mais sur les pa ges
d'éléments il peut se rattraper.
En définitive, il semble que getElementsByClassName soit pas mal aussi
pour faire ça, et ne nécessite pas de document au format XML.
ça peut tenir compte un nameSpaceResolver si tu es en xhtml avec du svg
dedans par ex.
aussi surtout ne pas modifier les nœuds dans la boucle d'itération Xpath...
Ah oui il y a une carte.
Mais si c'est l'espace de noms qui n'est pas reconnu je dois avoir un
message dans ce sens, non ?
Sauf que pour utiliser Xpath il faut un document XHTML, non ?
Enfin XML, mais comme c'est du HTML ...
Le style CSS? Veux-tu dire la classe, ou un style inline à la <div
style="display: none;">, ou une propriété CSS attribuée
programmatiquement?
Bonjour,
Il a fallu que je relise le fil pour me rappeler de quoi il retourne.
A présent tout ce que je me rappelle est que j'ai fini par corriger les
pages d'index manuellement vers xhtml, et que pour extraire les numé ros
des pages de détails (ce dont il est question ici) je m'en suis bien sorti.
Si quelqu'un a du mal avec ça et qu'il faut que je fasse une synthà ¨se
dessus il faudrait quand même que je m'y replonge.
La bonne nouvelle est que je n'ai pas eu besoin d'utiliser le résult at
car un boulot m'est tombé dessus autrement : là où c'est u ne bonne
nouvelle surtout c'est que ça a fait plus vite et que ça a coà »té moins cher.
J'épiloguerais bien là -dessus mais là ce serait hors sujet .