|
超好的HTML解析工具PHPSimpleHTMLDOMParser中文手册
采用PHP5+开发的一个简单的PHPHTMLDOM分析,支持invalidHTML并提供非常简单的方式来操作HTML元素。在HMTL页面上查找标签所使用的语法与jQuery(一个轻量级,实用的javascript框架)相似。从页面中抽取内容只需要一行代码。
手册地址:http://www.kg-led.com/phpgrid/simplehtml/
请参考http://simplehtmldom.sourceforge.net/
phpSimpleHTMLDOMParser强力解析html工具
include('../simple_html_dom.php');
//CreateDOMfromURLorfile
$dom=file_get_dom('http://www.torrentz.com/movies');
//Findall
foreach($dom->find('img')as$element)
echo$element->src."/n";
foreach($dom->find('a')as$element)
echo$element->href."".$element->innertext."/n";//网址及结连名称
运用curl主站目前已可抓文抓图
//curl范列
$ch=curl_init("http://static.php.net/www.php.net/images/php.gif");
curl_setopt($ch,CURLOPT_HEADER,0);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_BINARYTRANSFER,1);
$rawdata=curl_exec($ch);
curl_close($ch);
$fp=fopen("php.gif",'w');
fwrite($fp,$rawdata);
fclose($fp);
===========================================================
me578022简单分析HTML-PHPSimpleHTMLDOMParser
网址:http://sourceforge.net/projects/simplehtmldom/
因为使用PHP内建的DOM物件分析HTML实在太痛苦了,
我自己写了一个放到Sourceforge上,希望大家能提供一些开发的建议.
特色:
1.只支援PHP5以上
2.可以分析不严谨(invalid)的HTML.
3.支援简单的CSSSelector.
4.简单的DOM操作
5.会维持HTML中的原始格式.
范例:
<?
//示范如何读取HTML元素
include('html_dom_parser.php');
//产生DOM物件
$dom=file_get_dom('http://www.google.com/');
//找出所有网页连结
$result=$dom->find('a');
foreach($resultas$v){echo$v->href.'<br>';}
//找出所有网页图片
$result=$dom->find('img');
foreach($resultas$v){echo$v->src.'<br>';}
//找出所有网页中所有id=gbar的div标签
$result=$dom->find('div#gbar');
foreach($resultas$v){echo$v->innertext.'<br>';}
//找出所有网页中所有calss=gb1的span标签
$result=$dom->find('span.gb1');
foreach($resultas$v){echo$v->outertext.'<br>';}
//找出所有网页中所有align=center的'td标签
$result=$dom->find('td');
foreach($resultas$v){echo$v->outertext.'<br>';}
?>
<?
//示范如何修改HTML元素
include('html_dom_parser.php');
//产生DOM物件
$dom=file_get_dom('http://www.google.com/');
//移除网页中所有图片
$ret=$dom->find('img');
foreach($retas$v){$v->outertext='';}
//修改网页中所有input标签
$ret=$dom->find('input');
foreach($retas$v){$v->outertext='[INPUT]';}
//显示修改后的网页
echo$dom->save();
?>
|
|
|