// 创建一个html对象,这个抓的是谷歌的首页
$html = file_get_html('http://www.google.com/')
//找到对象中所有的img的src
foreach($html->find('img') as $element)
echo $element->src . '<br>'
//找到对象中所有的a的href
foreach($html->find('a') as $element)
echo $element->href . '<br>'
就是以前你采集的时候,先file_get_contents把目标url的页面源码抓过来,假如要页面里的a标签的href,你要用正则分析。现在有了这个simple_html_dom。直接可以帮你分析出你需要的a标签里的href。
要想利用php调用html中元素,需要借助PHP Simple HTML DOM Parser这个工具。它可以以类似jQuery的方式通过css选择器来返回指定的DOM元素,功能十分强大。
1、首先要在程序的开始引入simple_html_dom.php这个文件 :
include_once('simple_html_dom.php')
2、PHP Simple HTML DOM Parser提供了3种方式来创建DOM对象
// Create a DOM object from a string
$html = str_get_html('<html><body>Hello!</body></html>')
// Create a DOM object from a URL
$html = file_get_html('http://www.google.com/')
// Create a DOM object from a HTML file
$html = file_get_html('test.htm')
3、得到DOM对象后就可以进行各种操作了
// Find all anchors, returns a array of element objects
$ret = $html->find('a')
// Find (N)th anchor, returns element object or null if not found (zero based)
$ret = $html->find('a', 0)
// Find lastest anchor, returns element object or null if not found (zero based)
$ret = $html->find('a', -1)
// Find all <div>with the id attribute
$ret = $html->find('div[id]')
// Find all <div>which attribute id=foo
$ret = $html->find('div[id=foo]')