PHP CSS Selectorライブラリ? [閉まっている]
-
06-07-2019 - |
質問
CSSセレクターでXHTMLドキュメントを照会できるPHPクラス/ライブラリはありますか?何らかの方法でCSSセレクターを使用できる場合は、非常に簡単にアクセスできるデータのページをスクレイピングする必要があります(jQueryが私を台無しにしました!)。アイデアはありますか?
解決
さらにググリングした後(最初の結果はあまり役に立たなかった)、実際にはこのためのZend Frameworkライブラリと他のいくつかのライブラリがあるようです:
他のヒント
XPathはXML(およびXHTML)ノードにアクセスするためのかなり標準的な方法であり、CSSよりもはるかに高い精度を提供します。
もう1つ:
http://querypath.org/
すばらしいのはsymfony 2のコンポーネントです CssSelector \ Parser ­はじめに 。 CSSセレクターをXPath式に変換します。見てください=)
PHP Query Lite を使用することになりました。これは非常にシンプルで、必要なものがすべて揃っています。
ドキュメントの解析には、 DOM を使用します。タグ名(この例では" div")を知っていれば、これで問題を簡単に解決できます:
$doc = new DOMDocument();
$doc->loadHTML($html);
$elements = $doc->getElementsByTagName("div");
foreach ($elements as $e){
if ($e->getAttribute("class")!="someclass") continue;
//its a div.classname
}
DOMでドキュメントのすべての要素を一度に取得できるかどうかわからない...ツリートラバーサルが必要になる場合があります。
Mootools CSSセレクターエンジン http://selectors.svn.exyks.org/に基づいて、私のものを書きました。 。 simplexml拡張機能に依存しています(つまり、読み取り専用です)
所属していません StackOverflow