XPathテスター(XML・HTML用 XPath 1.0)
ブラウザ上でXMLやHTMLに対してXPath 1.0の式を試します。一致したノード、件数、文字列、数値、真偽値を表示し、名前空間プレフィックスにも対応しています。
XPathは、//book[price > 10]/titleのようなパス式で、XMLやHTMLドキュメントの一部を選択します。スクレイパー、XSLT、SeleniumやPlaywrightのロケーター、SOAPクライアント、多くの設定ツールがXPathに依存しており、タイプミスがあると何も選択されないまま静かに終わります。ドキュメントを貼り付けて式を入力すると、ブラウザ自身のXPath 1.0エンジンで、どのノードが一致するか、またはcount()のような式が返す数値・文字列・真偽値を正確に確認できます。
使い方
- XMLまたはHTMLを貼り付け、解析方法を選びます。
- XPath式を入力して、計算ボタンを押します。
- 名前空間つきのXMLでは、ドキュメント内で宣言されたプレフィックスが自動で紐づけられます。他のものはprefix=URIの行として追加します。
- 一致した項目(テキスト内容、種類、名前、シリアライズされたマークアップ)、または計算結果の値を確認します。
計算式
/ 子 · // 子孫 · @ 属性 · [条件] · text() · count() sum() string() contains() starts-with() position() last()
ブラウザが実装しているXPath 1.0です(matches()やlower-case()のようなXPath 2.0/3.1の関数は使えません)。ノードセットはドキュメント順に並びます。プレフィックスのない名前は、既定の名前空間(xmlns="…")の要素には一致しないため、XPath 1.0の要件どおり、そのURIにプレフィックスを紐づけて使ってください。
計算例
サンプルのcatalogでは、//book[price > 10]/titleが2ノード、「XML Developer's Guide」(44.95)と「Maeve Ascendant」(12.50)に一致します。count(//book)は数値の3を、count(//book[@lang])は2(lang属性を持つ本が2冊)を返し、//book/@idはbk101、bk102、bk103を列挙します。
よくある質問
RSS、Atom、SOAPのドキュメントで式が何も返さないのはなぜですか?
それらのドキュメントは既定の名前空間を使っています。XPath 1.0には既定の名前空間がないため、//entryは何にも一致しません。atom=http://www.w3.org/2005/Atomのようなプレフィックスを紐づけて、//atom:entryと書いてください。
XPath 2.0や3.1の関数は使えますか?
いいえ。ブラウザが実装しているのはXPath 1.0だけです。多くの人が必要とする式(パス、条件、contains()、count())は1.0で書けます。
HTMLの結果に、書いていないタグが含まれるのはなぜですか?
HTMLはWebページと同じように解析されるため、パーサーが<html>、<body>、<tbody>のような省略された要素を補います。ブラウザのDOMとまったく同じです。
ドキュメントはアップロードされますか?
いいえ。すべてブラウザ内で処理されます。
入力中に更新されないのはなぜですか?
ブラウザのXPathエンジンは一度始まると止められず、//*[count(//*) > 0]のように条件の中に//が入れ子になった式は、大きなドキュメントでは数分かかることがあります。そのため、計算ボタンを押したときだけ実行されます。
出典
最終更新:
この入力内容のページアドレス: https://kakao.mobile/ja/tools/xpath-tester/
このツールを引用する
kakaoCalc. (2026, November 8). XPathテスター(XML・HTML用 XPath 1.0). https://kakao.mobile/ja/tools/xpath-tester/
“XPathテスター(XML・HTML用 XPath 1.0).” kakaoCalc, 8 Nov. 2026, kakao.mobile/ja/tools/xpath-tester/.