Php Dom 文件结果错误

Php Dom Document results error

我想从 html 中抓取一些元素,但我无法按需要抓取数据。

html

<div class="opinions">
<ul>
<li>
<div class="imgcontainers">
<a href="domainname.com" title="title">                                                 `<img width="160" src="image.jpg" />`
</a>
</div>
<p class="caption">
<a href="domainname.com" class="head">asdfad</a>
<span>November 03, 2015 09:29 This is article title</span>
</p>
</li>
</ul>
</div>
$dom = new DOMDocument();
$classname = 'opinions';
$html = get_page($url);
@$dom->loadHTML($html);
$dom->preserveWhiteSpace = false;
$xpath = new DOMXPath($dom);
$articles = $xpath->query("//*[@class='" . $classname . "']");

$p = $articles->getElementsByTagName('a');
$div = $articles->getElementsByTagName('div');
foreach($p as $value){
    $title = $value->getAttribute("href");
    echo $title;
}

当我 运行 这个脚本时我收到这个错误 "Call to undefined method DOMNodeList::getElementsByTagName()"

我真正需要的是,我需要每个 href link 和 img src 路径(如果有的话)和 this 的 span 文本值。请建议您如何实现这一目标。

也许你可以从我这里学到一些东西code

或者,如果您决定包含我的功能,我是这样做的:

    $html = ""; //your html
    $props = array(
    array("tagname"=>"div", "props"=>array("class"=>"opinions")),
    //the '/' before 'a' is for all descendant <a> of <div>
    array("tagname"=>"/a"),
    );
    $options = array("property"=>"href");
    require_once 'getNodeValue.php';
    $hrefs = getNodeValue($html, $props, $options);
    print_r($hrefs);