1

例如,是否可以使用 DOM (getElementsByTagName) 获取元标记内容

这是我试图从中获取内容的元标记。

<span class="nobr">
    <a href="/title/tt1981115/releaseinfo?ref_=tt_ov_inf " title="See all release dates"> 
        8 November 2013
        <meta itemprop="datePublished" content="2013-11-08">
        (USA)
    </a>            
</span>

这就是我试图获取元内容的方式。

$metas = $dom->getElementsByTagName('meta');
for($i=0; $i <$metas-> length; $i++){
    $itemprop = $metas->item($i)->getAttribute("itemprop");
    if ($itemprop == "datePublished"){
        if ($metas->item($i)->textContent!=''){
            $res['published'] = $metas->item($i)->textContent;
        }
    }
}

有人能告诉我为什么它不会得到内容吗?

4

1 回答 1

0

也许您需要内容属性的值?

$metas = $dom->getElementsByTagName('meta');
for($i=0; $i <$metas-> length; $i++){
    $itemprop = $metas->item($i)->getAttribute("itemprop");
    $content = $metas->item($i)->getAttribute("content");
    if ($itemprop == "datePublished" && $content !== ''){
        $res['published'] = $content;
    }
}

var_dump($res);

请注意,此代码对有问题的 html 示例有效。只是你可以看到你的代码的方向

于 2013-10-29T18:37:11.463 回答