FC2ブログ

KIC

KICのメモ帳  

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
                  

XPathのメモ

XPathのメモ

XPathのメモです。XPathの説明はありません。このメモでは、HTMLとJavascriptとXPathなどを使います。

HTMLのサンプル

このHTMLをサンプルとして使います。

<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>XPath sample</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <div id="page"> <div id="main"> <h1>headder</h1> <p> fugafuga. </p> <p class="code"> hogehoge.fugafuga.piyopiyo. </p> </div> <div id="side"> <ul> <li><span class="red" id="fuga">hoge</span></li> <li><span class="red">piyo(<a href="http://twitter.com/komiy">link</a>)</span></li> <li><span class="red" id="fuga">hoge</span></li> </ul> </div> <div id="header"> <span>test</span> </div> <div id="footer"> <span><a href="http://kicsysytem.blog70.fc2.com/blog-entry-197.html">go back</a></span> </div> </div> </body> </html>

XPathの例

h1タグのテキストを取得
//h1/text()

idが"fuga"のテキストノードを取得
//*[@id='fuga']/text()
//span[@id='fuga']/text()
//div[@id='side']//span[@id='fuga']/text()

class属性が"red"でid属性が"fuga"のテキストノードを取得
//*[@id='fuga' and @class='red']/text()

http://twitter.com/komiyへのリンクのアンカーテキストを取得
//a[@href='http://twitter.com/komiy']/text()

JavaScriptでXPath

document.evaluate()を使います。全部のブラウザには対応していないので、使いたい場合は便利なJavaScriptライブラリを探しましょう。document.evaluate()の第一引数にXPathを指定するとよいです。

以下はサンプルコードです。これをコピーして、先ほどのHTMLのサンプルで実行してみます。実行するには、ブラウザのURL欄に貼り付けてたたけばOKです。

javascript:javascript:var xpath = "//*[@id='fuga']/text()";alert(document.evaluate(xpath,document,null,XPathResult.STRING_TYPE, null).stringValue);

                  

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック

http://kicsysytem.blog70.fc2.com/tb.php/197-7df38e2e

 | HOME | 

カレンダー

« | 2018-12 | »
S M T W T F S
- - - - - - 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 - - - - -

過去の記事

カテゴリ

最近の記事

コメント

トラックバック

Appendix

kics

kics

FC2ブログへようこそ!

FC2Ad

メール:kic_weblog@yahoo.co.jp
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。