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 |
댓글