2017-11-29 7 views
1

div id = firehoselist에서 h2 내의 모든 내용을 가져 오려고 시도했지만 다음 코드는 첫 번째 결과 만 반환합니다. 모든 아이디어를 내가 여기에 게시 너무 지저분 긁어하기 위해 노력하고있어오직 하나의 결과 만 얻을 수 있습니다 Dom Crawler

$crawler = new Crawler($content); 

    $crawler->filterXPath('//div[@id="firehoselist"]//*')->each(function (Crawler $node) use (&$results) { 

     $results[] = trim($node->filter('h2')->text()); 

}); 

내용을 기쁘게하지만,

답변

1

//div[@id="firehoselist"]에 대한 firehoselist의 ID를 가지고 모든 요소를 찾고있는 슬래시닷 (Slashdot)의 조직의 웹 사이트에서입니다 첫 번째이 항목의 결과는 $node->filter('h2')->text()입니다. 또한 단지/추가가> $ 크롤 같은 filterXPath를 ('// DIV [작동 할 필요가 @id -

$crawler->filterXPath('//div[@id="firehoselist"]//h2')->each(function (Crawler $node) use (&$results) { 

     $results[] = trim($node->text()); 

}); 
+0

쿨 리오의 감사 :

는 당신이 필요로하는 것은 구문 분석 HTML의 모든#firehoselist h2를 얻는 것입니다 = "firehoselist"] // h2 ') -> each (function (Crawler $ node) use (& $ results) { – GAV

+0

편집 됨, 다행 이네 내게 – Azuloo

+0

이 발생했다. 루프는 동시에 H2만이 아니라 다른 조합을 시도하지만 그것을 해결할 수는 없다. – GAV