• 2009-07-23

    分析HTML - PHP Simple HTML DOM Parser - [技术文档]

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://lizi.blogbus.com/logs/42806023.html

    项目网址: http://sourceforge.net/projects/simplehtmldom/ 

    特色: 
    1.只支援PHP5以上
    2.可以分析不严谨(invalid)的HTML. 
    3.支援简单的CSS Selector. 
    4.简单的DOM操作
    5.会维持HTML中的原始格式.

    一些范例:

    <?php

    //示范如何读取HTML元素 

    include(’html_dom_parser.php’); 

    //产生DOM物件 

    $dom = file_get_dom('[url]http://www.google.com/[/url]'); 

    //找出所有网页连结 

    $result = $dom->find(’a); 

    foreach($result as $v) {echo $v->href . '<br>';} 

    //找出所有网页图片 

    $result = $dom->find(’img’); 

    foreach($result as $v) {echo $v->src . '<br>';} 

    //找出所有网页中所有id=gbar的div标签 

    $result = $dom->find(’div#gbar’); 

    foreach($result as $v) {echo $v->innertext . '<br>';} 

    //找出所有网页中所有calss=gb1的span标签 

    $result = $dom->find(’span.gb1′); 

    foreach($result as $v) {echo $v->outertext . '<br>';} 

    //找出所有网页中所有align=center的'td标签 

    $result = $dom->find(’td[align=center]‘); 

    foreach($result as $v) {echo $v->outertext . '<br>';} 

    ?> 

     
    <?php 

    //示范如何修改HTML元素 

    include(’html_dom_parser.php’); 

    //产生DOM物件 

    $dom = file_get_dom('[url]http://www.google.com/[/url]'); 

    //移除网页中所有图片 

    $ret = $dom->find(’img’); 

    foreach($ret as $v) {$v->outertext = ”;} 

    //修改网页中所有input标签 

    $ret = $dom->find(’input’); 

    foreach($ret as $v) {$v->outertext = '[INPUT]';} 

    //显示修改后的网页 

    echo $dom->save(); 

    ?>


    收藏到:Del.icio.us