xpath Tutoriel
Démarrer avec xpath
Recherche…
Remarques
XPath est un langage permettant d'adresser des parties d'un document XML.
Il est utilisé dans XSLT et est un sous-ensemble de XQuery. Les bibliothèques sont également disponibles pour la plupart des autres langages de programmation.
XPath est une norme internationale avec des spécifications publiées par le W3C:
- XPath 1.0: XML Path Language (XPath), version 1.0
- XPath 2.0: XML Path Language (XPath) 2.0 (deuxième édition)
- XPath 3.0: XML Path Language (XPath) 3.0
Versions
Version | Date de sortie |
---|---|
1.0 | 1999-12-16 |
2.0 | 2007-01-23 |
3.0 | 2014-04-08 |
3.1 (Recommandation du candidat du W3C) | 2015-12-17 |
Exemple de XML (sans espaces de noms)
Voici quelques exemples de XML avec lesquels XPath peut être écrit:
<r>
<e a="1"/>
<f a="2" b="1">Text 1</f>
<f/>
<g>
<i c="2">Text 2</i>
Text 3
<j>Text 4</j>
</g>
</r>
Sélectionnez le texte
Pour l'exemple XML (sans espaces de noms):
Ce XPath,
/r/f/text()
sélectionnera le noeud de texte avec cette valeur de chaîne:
"Text 1"
Et ce XPath,
string(/r/f)
renverra la valeur de chaîne de f
, qui est aussi:
"Text 1"
Sélectionnez un élément
Pour l'exemple XML (sans espaces de noms):
Ce XPath,
/r/e
sélectionnera cet élément:
<e a="1"/>
Opérations HTML communes
Si l'entrée HTML DOM est
<html>
<body>
<a>link</a>
<div class='container' id='divone'>
<p class='common' id='enclosedone'>Element One</p>
<p class='common' id='enclosedtwo'>Element Two</p>
</div>
</body>
</html>
Trouver un élément avec un identifiant spécifique dans la page entière
//*[@id='divone'] # Returns <div class='container' id='divone'>
Trouver un élément avec un identifiant spécifique dans un chemin particulier
/html/body/div/p[@id='enclosedone'] # Returns <p class='common' id='enclosedone'>Element One</p>
Sélectionnez un élément avec un identifiant et une classe particuliers
//p[@id='enclosedone' and @class='common'] # Returns <p class='common' id='enclosedone'>Element One</p>
Sélectionnez le texte d'un élément particulier
//*[@id='enclosedone']/text() # Returns Element One
Test de Xpaths dans la console du navigateur
Un moyen rapide de tester votre xpath se trouve dans la console de votre outil de développement de navigateur.
Le format est
$x('//insert xpath here')
$ - spécifie qu'il s'agit d'un sélecteur.
x - spécifie qu'il utilise xpaths
Exemple:
$x("//button[text() ='Submit']")
Lorsque cette commande est entrée, elle renvoie toutes les occurrences des éléments qui sont des boutons avec un texte égal à Submit.