タグ

xpathに関するsugizouのブックマーク (6)

  • New version of $X - 氾濫原

    コピペメモ 今までの $X は evaluate を二回する問題があってダサいので、使い勝手をそのままにしつつ新しくして使いはじめました。 type 指定を導入 ECMAScript 側で受けとりたい型を指定する。 (Array, String...) XPathResult.BOOLEAN_TYPE とか指定するのはめんどいし覚えられない。 type 指定なしの場合は UNORDERED_NODE_ITERATOR_TYPE をそのまま Array に変換してかえす たぶんこれでも殆どの場合は問題ないと思う ノード集合じゃない (number とか) ならそれぞれそのままかえす (いままでとおなじ) type 指定で Array を指定した場合は ORDERED_NODE_SNAPSHOT_TYPE を Array に変換してかえす UNORDERED なやつで特別問題がある場合つかう

  • xpath4jquery.jsをjquery-1.3.jsで動かす - TakiTakeの日記

    たまに、jQueryはXPathのセレクタ使えるというエントリーを見かけますが、CSSのセレクタの間違いです。 例えば、idがhogeの要素を取得する場合 #hoge が CSS id("hoge") が XPathで、XPathを使いたいなぁと思っていたところ、 id:amachangさんがJavascript-XPath作ってた事を思い出し、使ってみた。XPath for jQueryと併用して、いざページ開いたら、 javascriptエラーが、"XPath for jQuery"の方でエラーになるみたいなので、ソース確認。 要は、関数の拡張なので、jQuery.extendとjQuery.fn.extendでいけるのでは?と素人考えで変更したらうまくいきました。 // type is String or Number or Booleaen or Array or undefine

    xpath4jquery.jsをjquery-1.3.jsで動かす - TakiTakeの日記
  • XPathGraph がすごい件と、XPath で出来ることのヒント - IT戦記

    XPathGraph とは http://xpath.kayac.com/ URL と XPath を指定すると一日に一回その URL をスクレイピングして XPath 式が示す値をグラフにしてくれる!という画期的なサービスです。 例えば、 URL と XPath を指定するだけで以下のようなグラフが作れてしまいます。 当に楽しいことが出来そうでワクワクしてます! でも まだ XPath を登録している人が意外と少ないので、「ひょっとして、このサービスの使いどころが分からないのかなあ。」と思いました。 というわけで XPath で出来ることのヒントを少し紹介したいと思います。 足し算、引き算、かけ算、割り算 XPath では普通に数値の演算ができます。 たとえば、 //div[@class=counter] で取得してきた div 要素が 1000 という数値を持っていたとすると 2 *

    XPathGraph がすごい件と、XPath で出来ることのヒント - IT戦記
  • SITEINFOのnextLinkケーススタディ - os0x.blog

    AutoPagerizeのSITEINFOを書くとき、ネックになりがちなのはnextLinkのXPath。 pageElementのXPathは割とシンプルに書ける*1し、insertBeforeは省略しても構わない。 というわけで、nextLinkのXPathのパターンを簡単にまとめてみる。 aタグを直接指定できるケース 次のページのURLを情報*2を含む要素を直接指定できるケース。精度が高く、メンテナンス面も優れる。 Microformats 例:はてなダイアリー AutoPagerize体にも組み込まれている通り、aタグもしくは、linkタグのrel属性にnextが指定された要素を取得する。 html <link rel="prev" href="/os0x/?of=5" title="前の5日分"> XPath nextLink: '//link[@rel="prev"]' 大抵

    SITEINFOのnextLinkケーススタディ - os0x.blog
  • Firebug で XPath を簡単に試す方法 - IT戦記

    適当に XPath を試したい時に 以下のようにすれば、簡単に XPath をためせます。 document.evaluate( '//div[@class="hoge"]', // XPath 式 document, // 基準となるノード(要素とか null, // 名前空間の解決方法(適当にやるときは null 6, // 取得する形式の指定(適当にやるときは 6 null // 結果を再利用するかどうか(適当にやるときは null ); 簡単ですね。 document.evaluate、式、ドキュメント、ヌル、6、ヌル。 覚えましたか? でも、これを Firebug で実行するとこうなっちゃいます。 うーん。これではどの要素が選択されたかわかりません>< 不便ですねー。 というわけで、以下のブックマークレットを実行してあげてください。 javascript:void(XPathRe

    Firebug で XPath を簡単に試す方法 - IT戦記
  • JavaScript での XPath の利用の手引き - XPath | MDN

    const xpathResult = document.evaluate( xpathExpression, contextNode, namespaceResolver, resultType, result, ); evaluate() 関数は 5 つの引数を取ります。 xpathExpression: 評価する XPath 式を文字列で指定します。 contextNode: xpathExpression を評価する対象となる文書内のノードを指定します。指定されたノードの全ての子ノードに対しても評価が行われます。もっともよく使用される値は document ノードです。 namespaceResolver: xpathExpression に含まれるあらゆる名前空間接頭辞を渡され、その接頭辞に対応する名前空間 URI を表す文字列を返す関数です。この関数により、 XPath 式で使

    JavaScript での XPath の利用の手引き - XPath | MDN
  • 1