XPath

どう書くXPath:ここからここまで

XPathの不便なところ - ぶろぐ。@はてなより、http://labs.cybozu.co.jp/blog/akky/archives/2009/02/interviewd-by-junior-high.htmlの本文を取るXPathを考えてみた。とりあえず、2パターン。*1 id("center")/div/*[preceding-sibling::*[following-sibling…

リンクになっていないURLを新規タブで開くGreasemonkey Script

Text URL Linker という Greasemonkey Script を CodeRepos (と Text URL Linker for Greasemonkey) にあげました。Firefox の Greasemonkey, Opera(9.50以降) の UserJavaScript, Safari の GreaseKit, Google Chrome の Greasemetal, Chromium の Greasemo…

配列を作らない$X関数 (失敗)

XPathのevaluate結果に対する処理をスマートに書くための便利関数 - 今日もスミマセン。を見て、思いついた。$X関数は便利だけど、配列を詰めなおす処理が今ひとつだと感じてました。 で、その改案です。http://gist.github.com/19461 function $XA (exp, co…

document.contentType == "application/xhtml+xml"なページでの$X

document.evaluateと名前空間がわからない - by edvakf in hatenaへのレスです。document.contentTypeが"application/xhtml+xml"の場合、名前空間があるので、通常のXPathでは要素を取得できません。resolverとprefixが必要になります。*1で、m.twitterはHTT…

XPathにおける//*とdescendant::*の違い

XPath Cookbookネタで書いてたんですが、長くなったのでとりあえずこちらに。 id:taizoooにリクエストされた//とdescendant::の違いについて。下準備として、こういうHTMLをサンプルとして使用します。(サンプルはFirebugのコンソールで実行できます) docume…

XPathのスピードテスト

jottit.comのLDRize用XPath - FFFF - 0x XPath - 枕を欹てて聴く XPathとかCSSの評価にかかる時間のこと - ロックスターになりたい 関連。AutoPagerize SITEINFOを保存して、そのHTMLで軽くテストしてみた。 xpath speed test 例によって、JSEnumeratorのBen…

OperaのXPathについてのバグ(は9.50で修正されます)

はてなブックマーク - ku0522のブックマーク - 2008年4月6日に気が付いたけど、肝心のquaaさんの記事が消えているので補足エントリーを書いておきます。 Opera9.50"以前"でのバグ 動的に作成したDocumentでevaluateしたとき、XPath関数を使うと元のDocument…

さて、XPathはどこで使う?

XPath は jQuery や Prototype.js と競合する技術ではなく、むしろ共存する技術です - IT戦記について軽く。僕はGreasemonkeyを書くときに必ずといっていいほどXPathを使っている。XPathなしでいろんなサイトのHTMLを弄ることは最早苦痛でしかなくて、XPath…