XPathテスター
XMLとXPath式を入力すると、その場でマッチしたノード・値を表示します。ブラウザ標準のXPathエンジンを使うため、実際の挙動をそのまま確認できます。処理はすべてブラウザ内で完結します。
結果
このツールについて
- ブラウザ標準の
document.evaluate()を使用しており、実際にブラウザ内でXPathがどう評価されるかをそのまま確認できます。 - ノード集合・文字列・数値・真偽値のいずれの結果種別にも対応します。
- 名前空間つきXML(
xmlns)は、既定の名前空間解決の都合上、要素名だけでは一致しない場合があります。その際はローカル名でのマッチ(例:*[local-name()='book'])をお試しください。 - 処理はすべてブラウザ内で完結し、入力したXML・XPathが外部に送信されることはありません。
XPathテスターとは?使い方と活用ガイド
XPathテスターは、XMLとXPath式を入力すると、マッチしたノードや値をその場で確認できる無料ツールです。スクレイピングのセレクタ調整、SOAPやRSSなどXMLベースのAPIレスポンスの調査、設定ファイルからの値の抽出など、XPathを書く場面で「この式で本当に取れるのか」を試行錯誤するために使えます。
くわしい説明を読むあと3段落
評価にはブラウザ標準のXPath機能(document.evaluate)を使っています。つまり、実際にWebページ内でXPathを評価した場合と同じ結果が得られます。ブラウザの開発者ツールで試すのと同じ挙動を、対象のXMLを貼り付けるだけで確認できるということです。式を少しずつ変えながら、マッチ結果がどう変わるかを見比べられます。
ノード集合だけでなく、string()やcount()のように文字列・数値・真偽値を返す式にも対応しており、結果の種別に応じた値を表示します。件数を数える、テキストだけを取り出す、条件が成立するかを判定するといった使い方も試せるので、XPathの表現力を学ぶ教材としても役立ちます。
名前空間つきのXMLではつまずきやすい点があります。既定の名前空間解決の都合で、要素名を書いただけでは一致しないことがあるためです。その場合は local-name() を使った式、たとえば //*[local-name()="book"] のように書くとマッチします。名前空間の扱いはXPathでよくある落とし穴なので、実際に試して動きを確かめておくと本番で困りません。入力したXMLとXPath式は外部に送信されません。入力したデータはすべてお使いのブラウザ内(JavaScript)で処理され、サーバーへ送信・保存されることはありません。会員登録やインストールも不要で、PC・スマートフォンのどちらからでも、すべての機能を無料で利用できます。社内の機密情報や個人情報を含むデータでも外部に漏れる心配がなく、ネットワークから切り離されたオフライン環境でも一度読み込めば動作するため、セキュリティが求められる業務でも安心して使えるのが、インストール型ソフトやサーバー処理型サービスにはないブラウザ完結型ツールの大きな利点です。
よくある質問
どのXPathエンジンを使っていますか?
お使いのブラウザ標準のXPath機能(document.evaluate)を使用しています。実際にWebページ内で評価した場合と同じ結果を確認できます。
ノード集合以外(文字列・数値・真偽値)も確認できますか?
はい。string()やcount()、真偽値を返す式にも対応しており、結果種別に応じた値を表示します。
名前空間つきXMLでうまくマッチしません
既定の名前空間解決の都合上、要素名だけでは一致しないことがあります。local-name()を使った式(例: //*[local-name()="book"])をお試しください。
入力したXML・XPathは外部に送信されますか?
いいえ。処理はすべてお使いのブラウザ内(JavaScript)で完結し、入力した内容がサーバーへ送信・保存されることはありません。会員登録も不要で無料で使えます。