본문 바로가기
PHP

PHP SimpleHtmlDom Parser로 HTML 파싱하기

by 씨엔아이소프트 2019. 3. 3.
반응형

PHP SimpleHtmlDom Parser로 HTML 파싱하기



http://simplehtmldom.sourceforge.net/


https://github.com/samacs/simple_html_dom



다운로드 링크  : http://sourceforge.net/projects/simplehtmldom/files/latest/download?source=files



해당 홈에 나와있는 예제입니다.

간단한 주석을 붙입니다.


//html 을 가져오고

$html = file_get_html('http://www.google.com/');            


// 모든 이미지태그를 찾아냅니다.

foreach($html->find('img') as $element) 

       echo $element->src . '<br>';                                  


// 모든 a태그를 찾아내어 href속성을 뿌려줍니다.

foreach($html->find('a') as $element)                             

       echo $element->href . '<br>';


// 컨텐츠내에 텍스트들만 가져옵니다.

echo file_get_html('http://www.google.com/')->plaintext; 


// css jquery 많이 만져보셨다면 선택자는 거의 동일합니다.

//몇번째 a태그 같은 경우도 가져올수 있구요

foreach($html->find('div.article') as $article) {

    $item['title']     = $article->find('div.title', 0)->plaintext;

    $item['intro']    = $article->find('div.intro', 0)->plaintext;

    $item['details'] = $article->find('div.details', 0)->plaintext;

    $articles[] = $item;

}


//가져오기전 해당 태그내의 텍스트도 이렇게 간단히 변경가능합니다.

$html->find('div[id=hello]', 0)->innertext = 'foo';


예제

<?php

include_once('simplehtmldom_1_5/simple_html_dom.php');

// 네이버 html을 가져온다

$html = file_get_html('http://www.naver.com/');


// 모든 이미지태그를 찾고

foreach($html->find('img') as $element) {

       echo $element->src . '<br>';

}       

 

// 모든 a태그를 찾아내어 href속성을 뿌려줍니다.

foreach($html->find('a') as $element) {                            

       echo $element->href . '<br>';

}    

?>

반응형

'PHP' 카테고리의 다른 글

PHP 인코딩 감지  (0) 2019.09.18
PHP 브라우저 알아내기  (0) 2019.08.08
웹페이지 파싱  (0) 2019.03.03
PHP 인코딩 프로그램 php screw 1.5  (0) 2019.02.15
그누보드4 php7 사용  (0) 2019.02.08

댓글