タグ

xpathに関するonkのブックマーク (5)

  • XPath入門、実用例 - 素人がプログラミングを勉強していたブログ

    すべての要素 //* div直下のp //div/p style属性を持つspan //span[@style] alt属性のないimg //img[not(@alt)] idがheaderな要素 id("header") rel属性がshortcut iconなlink要素 //link[@rel="shortcut icon"] 子要素にimgを持つa要素 //a[./img] 子、子孫にa要素を持つh2要素 //h2[.//a] 子要素にulがないdiv //div[not(.//ul)] javascript:から始まるhref属性を持つa要素 //a[starts-with(@href,"javascript:")] alt属性の値がsrc属性の値と同じであるimg要素 //img[@alt=@src] alt属性の値がsrc属性の値と異なるimg要素 //img[@alt!=@

    XPath入門、実用例 - 素人がプログラミングを勉強していたブログ
    onk
    onk 2008/05/09
    これは良いサンプル
  • XPathをてきとうに作ってくれる機能を追加したwebscraperp.js - bits and bytes

    perlのWeb::Scraperみたいな記述で、ページの中からデータを取り出すwebscraper.jsという小さなjavascriptのライブラリに、要素をてきとうに渡したらてきとうにXPathを作って動いてくれるwebscraperp.jsというのを書きました。なんで最後にpをつけたかは思い出せません... ブックマークレットWeb::Scraperのjavascriptバージョンwebscraper.jsと同じように、データを取り出したいページでブックマークレットでwebscraperp.jsを読み込んでFirebugコンソールで使います。 ブックマークレット(Firefox3専用) webscraperp コードwebscraperp.js つかいかた Web::ScraperのSYNOPSISで例としてあげられているebayだとアクセスしたときによって出品されているものが違って

    onk
    onk 2008/03/09
    おー。いいなぁ,こういうスクレイピングを簡単にする方法。すげぇ直感的で素晴らしい。
  • 特定のclass属性を持った任意の要素にマッチするXPath | 3.14

    結論特定のclass属性を持った任意の要素にマッチするXPath(hogeは指定したいclass属性名) //*[contains(concat(" ",normalize-space(@class)," "), " hoge ")] 特定の要素にしたい場合は適当に div[contains(concat(" ",normalize-space(@class)," "), " hoge ")] などとする. 概要特定のclass属性を持った任意の要素にマッチするXPathというのはアドオンやUserJavaScriptスクレイピングの際にDOMノードを特定するために良く使いますが,XPathの書き方がマズイ人がたまにいます.普通に考えたらXPathはこうなります. XPath1:: //*[@class="hoge"] class属性は以下の引用部分に書かれているとおり,スタイルシート以

    onk
    onk 2008/02/12
    複数を考慮する必要があるときと無いとき。無いときの方が少ないのかなー?パッと見て分かりやすい方が良いんだけれど。
  • XPath, $X function, NSResolver < 16 < March < 2006 < nulog, NULL::something : out of the headphone

    JS の XPath なんて書きましたけど、重大なバグがありまして、っていうかなんで気がつかなかったんだろう、えーそれは application/xhtml+xml なページ、すなわち XML として、名前空間をちゃんと扱うページではまともにセレクトできないんですよーははははー、例えばこのサイトとかね。 $X = function (exp, context) { if (!context) context = document; var resolver = function (prefix) { var o = document.createNSResolver(context)(prefix); return o ? o : (document.contentType == "text/html") ? "" : "http://www.w3.org/1999/xhtml"; } v

    onk
    onk 2007/04/11
    おお,良いなぁ.
  • 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