xpath Samouczek
Rozpoczęcie pracy z xpath
Szukaj…
Uwagi
XPath to język do adresowania części dokumentu XML.
Jest używany w XSLT i jest podzbiorem XQuery. Biblioteki są dostępne również dla większości innych języków programowania.
XPath to międzynarodowy standard ze specyfikacjami opublikowanymi przez W3C:
- XPath 1.0: XML Path Language (XPath), wersja 1.0
- XPath 2.0: XML Path Language (XPath) 2.0 (Second Edition)
- XPath 3.0: XML Path Language (XPath) 3.0
Wersje
Wersja | Data wydania |
---|---|
1.0 | 1999-12-16 |
2.0 | 23.01.2007 |
3.0 | 08.04.2014 |
3.1 (Rekomendacja dla kandydatów W3C) | 17.12.2015 |
Przykładowy XML (bez przestrzeni nazw)
Oto przykładowy kod XML, na podstawie którego można zapisać przykładowe wyrażenia XPath:
<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>
Wybierz tekst
W przykładowym pliku XML (bez przestrzeni nazw):
Ten XPath
/r/f/text()
wybierze węzeł tekstowy o następującej wartości ciągu:
"Text 1"
A ta XPath
string(/r/f)
zwróci wartość ciągu f
, która jest również:
"Text 1"
Wybierz element
W przykładowym pliku XML (bez przestrzeni nazw):
Ten XPath
/r/e
wybierze ten element:
<e a="1"/>
Typowe operacje HTML
Jeśli wejściowy DOM HTML to
<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>
Znajdź element o określonym identyfikatorze na całej stronie
//*[@id='divone'] # Returns <div class='container' id='divone'>
Znajdź element o określonym identyfikatorze w określonej ścieżce
/html/body/div/p[@id='enclosedone'] # Returns <p class='common' id='enclosedone'>Element One</p>
Wybierz element o określonym identyfikatorze i klasie
//p[@id='enclosedone' and @class='common'] # Returns <p class='common' id='enclosedone'>Element One</p>
Wybierz tekst konkretnego elementu
//*[@id='enclosedone']/text() # Returns Element One
Testowanie Xpaths w konsoli przeglądarki
Szybki sposób na przetestowanie Xpath jest w konsoli narzędzi programisty przeglądarki.
Format to
$x('//insert xpath here')
$ - określa, że jest to selektor.
x - określa, że używa xpaths
Przykład:
$x("//button[text() ='Submit']")
Po wprowadzeniu tego polecenia zwróci wszystkie wystąpienia elementów, które są przyciskami z tekstem równym Prześlij.