DOMDocument 节点获取 HTML 内容
Posted
技术标签:
【中文标题】DOMDocument 节点获取 HTML 内容【英文标题】:DOMDocument node get the HTML content [duplicate] 【发布时间】:2012-10-22 01:12:32 【问题描述】:我正在编写一个应用程序来从 rss 提要中获取预览内容。 为此,我想获取特定 div 的 HTML 内容。
我正在获取的文本如下所示
<P>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean egestas enim non tellus interdum mollis. Pellentesque accumsan, purus quis facilisis vulputate,</P>
<P>leo enim rhoncus velit, non consectetur lacus libero a eros. Fusce rutrum, sapien eget facilisis placerat, metus enim sagittis ante, quis elementum velit tortor sit amet purus. </P>
<P>Mauris accumsan, dolor quis mollis iaculis, metus nisl lacinia neque, vel condimentum erat nisl ut lorem. Cras vestibulum urna in nisl ullamcorper rhoncus tincidunt massa </P>
<P>pretium. Nunc dui est, imperdiet et vulputate sit amet, facilisis semper ante. Duis ac ornare elit. Morbi gravida dolor vitae nunc tempus a hendrerit odio posuere. Morbi </p>
但是当我卷曲页面并解析它并获取 nodeValue 时,我得到的文本没有段落标签
$dom = new DOMDocument();
$dom->validateOnParse = false;
$html = get_data($item['link']);
$dom->loadHTML($html);
$storycontents = $dom->getElementById('story-body-text');
echo '<TR><TD>'.$storycontents ->nodeValue.' </TD></TR>';
在 DOMDocument 中有没有办法获取特定 id 的“innerHTML”属性?
【问题讨论】:
php.net/manual/en/class.domnode.php#domnode.props.textcontent 应该适合你 【参考方案1】:感谢@simone How to get innerHTML of DOMNode?
$tmp_dom = new DOMDocument();
$tmp_dom->appendChild($tmp_dom->importNode($child, true));
$innerHTML.=trim($tmp_dom->saveHTML());
没有出现在我的搜索中,但还是谢谢你。
【讨论】:
他说节点不是整个html内容 他是我?...哇,这太老了以上是关于DOMDocument 节点获取 HTML 内容的主要内容,如果未能解决你的问题,请参考以下文章
如何在没有 HTML 包装器的情况下保存 DOMDocument 的 HTML?
PHP DOMDocument - 获取 BODY 的 html 源代码
DOMDocument & XPath - 每个节点的 HTML 标签
DOMDocument-防止空标记//检索没有xml声明的节点