网页爬虫 - 请问PHP怎么使用xpath解析html内容呢?
程序员文章站
2022-06-09 20:57:00
...
在网上查看了很多相关资料,但都是PHP用xpath解析xml的,请问PHP有没有相关的函数或是类库能解析html吗?谢谢
回复内容:
在网上查看了很多相关资料,但都是PHP用xpath解析xml的,请问PHP有没有相关的函数或是类库能解析html吗?谢谢
直接用zend-dom吧,方便多了!
http://framework.zend.com/manual/2.3/en/modules/zend.dom.query.html
引入不用教了吧?
$url = 'http://www.baidu.com';
$ch = curl_init();
curl_setopt($ch, CURLOPT_FILE, fopen('php://stdout', 'w'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_URL, $url);
$html = curl_exec($ch);
curl_close($ch);
// create document object model
$dom = new DOMDocument();
// load html into document object model
@$dom->loadHTML($html);
// create domxpath instance
$xPath = new DOMXPath($dom);
// get all elements with a particular id and then loop through and print the href attribute
$elements = $xPath->query('//*[@id="lg"]/img/@src');
foreach ($elements as $e) {
echo ($e->nodeValue);
}
差不多这样的