見るだけでわかる XPath の * と node() の違い
- AutoPagerize の SITEINFO 書くときに役立つ知識
- 「node()と*の違い」については AutoPagerize Wiki の XPath Cookbook 先頭にサラっと書いてあるけど...未経験者には厳しい解説です。もっとわかりやすくってことで...
1.id が content の要素を指定する XPath は id("content") ですね
4.該当した要素の XPath の末尾を見てみると...
id("content")/* | id("content")/node() |
「node() はテキストノードも含む」ことがわかった
テキストノード:改行とか空白とか...もちろん意味のある文字列が含まれることもあります
まとめ
- 含まれるテキストノードがスペースや改行のみなら * を使うべき
- ただし、要素間のテキストノードに記事を入れているページもあるので、その場合は node() を使った指定をすること
ついでに「お知らせ」
- 先日のエントリー「AutoPagerize で正しい SITEINFO を wedata.net リポジトリに登録するコツ」を少し加筆(「SITEINFO 肥大化問題」)
- 公開している Adblock Plus 用フィルタ が公式ページ Adblock Plus: Known Adblock Plus subscriptions に載りました(やっと一段落)