可能性の重複:
How to parse and process HTML with PHP?PHP HTML DOMパーサ
私は、PHP用のHTML DOMパーサに探しています。私はPHP Simple HTML DOM Parserを見つけました。私が見なければならないものはありますか?
可能性の重複:
How to parse and process HTML with PHP?PHP HTML DOMパーサ
私は、PHP用のHTML DOMパーサに探しています。私はPHP Simple HTML DOM Parserを見つけました。私が見なければならないものはありますか?
で見ることができます。シンプルなHTML文書は大丈夫ですが、組み込みDOMパーザよりもmagnitude slowerの順です。
$dom = new DOMDocument();
@$dom->loadHTML($html);
$x = new DOMXPath($dom);
foreach($x->query("//a") as $node)
{
$data['dom']['href'][] = $node->getAttribute("href");
}
これを使用してください。
を作るための方法があるが、 'ノードリストの代わりにノードを返すquery'?たとえば、ページにはh1タグが1つしかありません。 nodeValueを取得したいが、ノードリストを反復処理する必要があるとは思わない。 – StackOverflowNewbie
'$ node [0]'を使ってリストの最初のノードを取得できるはずです。または反復して壊すだけです。私は反復して壊すだけです。クエリが何も返さない場合、私はそのようなエラーは発生しません。 –
あなたははい、組み込みDOM
は最近、私はまたganonを見つけましたが、一般的にPHP Simple HTML DOM Parserは最高です!
複数のページをクロールしようとすると、単純なHTML DOMパーサーのチョークが発生します。レベル1:300のリンクを取得する(例:リスティングから)level2:各リンクに行き、詳細でページを取得し、要素を取得する。あなたが得るすべては(サーバーの種類に応じて)リセットエラーのコレクションです - プラスそれは非常に遅い – Jeffz
ガノンだけ負荷2の私の欲求の要素とするとき、私のコンピュータが絞首刑に単純なHTML DOMパーサーを実行しようとしています! – zhilevan
ganonがPHPの組み込みDOMとSimple HTML DOM Parserよりもはるかに遅いことがわかりました。さらに、シンプルなHTML DOMはメモリリークの影響を受けているようで、割り当てられたオブジェクトを手動でクリーニングまたは再利用する必要があります。 – jahackbeth
は、なぜあなたは、あなたが何かを必要とすると思いますか?それが仕事をする場合は、それを使用してください。 :) – casablanca
そのまだ偉大なリソースゴードン、1 – RobertPitt