[php 홈 페이지 파충류] php 홈 페이지 데이터 캡 처

10240 단어 PHP
플러그 인 소개:
PHP Simple HTML DOM 해석 클래스: Simple HTML DOM parser 는 phop html 로 문 제 를 잘 해결 해 주 었 습 니 다.이 php 클래스 를 통 해 html 문 서 를 분석 하고 html 요 소 를 조작 할 수 있 습 니 다 (PHP 5 + 이상 버 전).
다운로드 주소:https://github.com/samacs/simple_html_dom
사용 방법:
1. simplehtml ldom 도입 
//                    
//  url   
$html->load_file('http://www.jb51.net');

//        
$html->load('       html    ');

//      
$html->load_file('path/file/test.html');

2. html 내용 가 져 오기
/  html         
$a = $html->find('a');

//      (N)    ,            .
$a = $html->find('a', 0);

//   id main div  
$main = $html->find('div[id=main]',0);

//        id   div  
$divs = $html->find('div[id]');

//        id     
$divs = $html->find('[id]');

jQuery 와 같은 선택 기 를 사용 하여 포 지 셔 닝 요 소 를 찾 을 수 있 습 니 다.
find('#container');

//     class=foo   
$ret = $html->find('.foo');

//     html  
$ret = $html->find('a, img');

//       ,   title   a   img  
$ret = $html->find('a[title], img[title]');
?>

해상도 기 는 하위 요소 찾기 를 지원 합 니 다.
find('ul li');

//   ul     class=selected li 
$ret = $html->find('ul li.selected');

내 장 된 함 수 를 사용 하면 요소 의 부모 요소, 하위 요소 와 인접 요 소 를 쉽게 찾 을 수 있 습 니 다.
parent;

//        
$e->children;

//             
$e->children(0);

//         
$e->first_child ();

//          
$e->last _child ();

//          
$e->prev_sibling ();

//         
$e->next_sibling ();

원소 속성 조작
간단 한 정규 표현 식 을 사용 하여 속성 선택 기 를 조작 합 니 다.
div[attribute] –         div  
div[attribute=value] –           div  
div[attribute!=value]-            div  
div[attribute^=value] -            div  
div[attribute$=value]             div  
div[attribute*=value] -            div  
 
  在解析器中调用元素属性 
  
在DOM中元素属性也是对象:
href;
?>

또는:
find('a',0)->href;
?

각 대상 마다 4 개의 기본 대상 속성 이 있 습 니 다:
tag –   html   
innertext –   innerHTML
outertext –   outerHTML
plaintext –   html      

해상도 기 에서 요 소 를 편집 합 니 다.
요소 속성 을 편집 하 는 용법 과 호출 은 유사 합 니 다.
href = 'http://www.jb51.net';

//      
$a->href = null;

//          
if(isset($a->href)) {
//  
}
?>

해상도 기 에는 요 소 를 추가 하고 삭제 하 는 전문 적 인 방법 이 없 지만 변경 해서 사용 할 수 있 습 니 다.
outertext = '
' . $e->outertext . '
'; // $e->outertext = ''; // $e->outertext = $e->outertext . '
foo
'; // $e->outertext = '
foo
' . $e->outertext; ?
html DOM :


어떻게 해상도 기 가 너무 많은 메모 리 를 소모 하 는 것 을 피 합 니까?
php 스 크 립 트 가 메모 리 를 너무 많이 사용 하면 사이트 응답 정지 등 일련의 심각 한 문제 가 발생 할 수 있 습 니 다.해결 방법 도 간단 합 니 다. 해석 기 에 html 문 서 를 불 러 오고 사용 이 끝 난 후에 이 대상 을 정리 하면 됩 니 다.물론 문 제 를 너무 심각하게 보지 마라.2, 3 개의 문 서 를 불 러 왔 을 뿐 청소 하거나 하지 않 는 것 은 큰 차이 가 없다.10 개, 심지어 더 많은 문 서 를 5 개 불 러 왔 을 때, 하 나 를 다 쓰 고 나 면 메모 리 를 정리 하 는 것 은 틀림없이 자신 에 게 책임 이 있 습 니 다 ^ ^
clear();
?>

참고 글:http://www.jb51.net/article/39526.htm

좋은 웹페이지 즐겨찾기