1

特定の値のサイトをクロールするクローラーがあります。この値はクラス div 内に直接配置されていませんが、もちろんクラスによって指定された親 div があります。この値は、親 div の 3 番目の div にあります (下を見ると、私の意味がわかります)。

コード

if($page->find('div.mbcContainer div div span')){       
   foreach($page->find('div.mbcContainer div div span') as $p){ 
      if(trim($p->plaintext)){                      
         $tp = $p->plaintext;
      }
   }
}

htmlページ

<div class="mbcContainer">
   <div>
      <div class="ie1"></div>
      <div class="ie2"></div>
      <div>
         <span>get this value</span>
      </div>
   </div>
</div>

「この値を取得する」という値でスパンを取得しようとしていますが、これを行う方法はありますか。

4

2 に答える 2

1
div.mbcContainer div div:nth-child(3) span
于 2012-05-19T20:42:21.330 に答える
1

編集:これはトリックを行います:

echo $page->find('div.mbcContainer div', 0)->children(2);

または、反復したい場合:

foreach ($page->find('div.mbcContainer div') as $p) {
    echo $p->children(2);
}
于 2012-05-19T20:26:23.460 に答える