2017-03-18 10 views
0

데이터를 내부 div에 저장하는 웹 사이트에서 모든 이미지를 가져오고 싶습니다. 어떻게 모든 이미지를 가져올 수 있습니까? 노력했지만 작동하지 않습니다. 다음은 [각도] 자바 스크립트에 의해 작동하는 웹 사이트를 스크랩 할 수없는 내 코드웹 스크 레이 핑으로 웹 사이트에서 데이터 가져 오기

<?php 
$html = file_get_contents('http://en.vonvon.me/'); //get the html returned from the following url 

$pokemon_doc = new DOMDocument(); 

libxml_use_internal_errors(TRUE); //disable libxml errors 

if(!empty($html)){ //if any html is actually returned 

    $pokemon_doc->loadHTML($html); 
    libxml_clear_errors(); //remove errors for yucky html 

    $pokemon_xpath = new DOMXPath($pokemon_doc); 

    //get all the h2's with an id 
    $pokemon_row = $pokemon_xpath->query('div[class=desc ng-binding]'); 

    if($pokemon_row->length > 0){ 
     foreach($pokemon_row as $row){ 
      echo $row->nodeValue . "<br/>"; 
     } 
    } 
} 
?> 
+1

입니다 사용할 수 있습니까? 아니오 또는 잘못된 출력? 오류 메시지? 오류 로그를 확인 했습니까? Btw .. 만약 당신의 코드가 작동하지 않는다면 디버깅 할 때 도움이되는 에러 메시지를 표시하지 않기 때문에'@ '기호를 제거해야합니다. –

답변

0

이다, 청소부는 자바 스크립트의 실행 후 DOM을보고하지 않습니다. 이미지가 DOM에 있다면

하지만, 다른 손에

, 당신은 문제가 무엇,

그것을위한 가장 좋은 것은 그래서 Simple HTML DOM Parser

$html = file_get_html('http://vonvon.me/'); 

// Find all images 
foreach($html->find('img') as $element) 
     echo $element->src . '<br>'; 
+0

코드를 지금 볼 수 있겠습니까? 이미지는 내부 div에 있습니다. 왜 이렇게합니까? 여전히 작동하지 않습니다. – user7657378

+1

죄송합니다. DOM을 보지 못했습니다. 대답을 게시하기 전에 Angular JS를 사용하여 웹 사이트에서 스크랩 할 수 없습니다. –