Penguji XPath
Uji ekspresi XPath 1.0 pada XML atau HTML dan lihat node, atribut, teks, serta hasil angka atau string yang cocok secara instan, memakai mesin bawaan browser.
Apa itu Penguji XPath?
Penguji XPath ini mengevaluasi ekspresi XPath terhadap dokumen XML atau HTML yang Anda tempel dan menampilkan hasilnya: elemen yang cocok beserta markup dan teksnya, nilai atribut, atau angka, string, maupun boolean untuk ekspresi seperti count() atau sum(). Hasil diperbarui saat Anda mengetik.
Cara menggunakan Penguji XPath
- Masukkan ekspresi XPath, misalnya
//book[price > 35]/title. - Pilih apakah dokumen diurai sebagai XML atau HTML.
- Tempel atau edit dokumennya.
- Baca jumlah kecocokan dan setiap node yang cocok, atau hasil skalarnya.
Contoh
//book[price > 35]/title on the sample bookstore XML
2 matches: Learning XML, XQuery Kick Start
sum(//book/price) menghasilkan 119.94.
Kapan menggunakan Penguji XPath
Gunakan untuk menyusun XPath bagi web scraping, locator Selenium/Playwright, XSLT, atau pemrosesan konfigurasi XML. Browser hanya mengimplementasikan XPath 1.0, sehingga fungsi XPath 2.0/3.1 (misalnya matches(), string-join()) tidak tersedia. Skrip di HTML yang ditempel tidak dijalankan.
Cara kerja Penguji XPath
Dokumen diurai dengan DOMParser milik browser (application/xml atau text/html); kesalahan sintaks XML dilaporkan. Ekspresi dievaluasi dengan document.evaluate() – mesin XPath 1.0 bawaan browser – memakai hasil ANY_TYPE, sehingga node-set, angka, string, dan boolean semuanya didukung. Prefiks namespace di-resolve dari deklarasi pada elemen root. Hingga 200 kecocokan ditampilkan.
Kasus Penggunaan Umum
- Menyusun locator seperti
//button[normalize-space()="Save"]untuk pengujian UI. - Mengekstrak semua nilai atribut dengan
//book/@category. - Menghitung jumlah atau total nilai di feed XML.
- Men-debug mengapa XPath di scraper tidak mengembalikan apa pun.
Pertanyaan Umum
Mengapa XPath saya dengan namespace bawaan tidak mengembalikan apa pun?
Di XPath 1.0, nama tanpa prefiks tidak pernah cocok dengan elemen ber-namespace. Deklarasikan prefiks di elemen root lalu gunakan, atau pakai *[local-name()='book'].
Sebaiknya diurai sebagai HTML atau XML?
Gunakan HTML untuk halaman web (penguraian toleran, nama tag huruf kecil); gunakan XML untuk feed, SOAP, sitemap, dan konfigurasi.
Apakah XPath 2.0 didukung?
Tidak. Semua browser utama hanya mengimplementasikan XPath 1.0.