提取文本
问题描述:
我有以下脚本,除了两件事情,作品几乎罚款:提取文本
- 我仍然有unknows标记,如
<note>
,<to>
,或者<?xml version="1.0" encoding="ISO-8859-1"?>
- 我也有JavaScript的脚本,我试图用
//text()[not(self::script)]
它们排除在外,但这打破了XPath的
脚本:
$contents = file_get_contents("http://www.w3schools.com/php/php_xml_dom.asp");
$dom = new DOMDocument();
@$dom->loadHTML($contents);
$dom->preserveWhiteSpace = false;
$xpath = new DOMXPath($dom);
// see http://www.w3schools.com/xpath/xpath_syntax.asp
$hrefs = $xpath->evaluate("//text()");
for ($i = 0; $i < $hrefs->length; $i++)
echo $hrefs->item($i)->nodeValue;
您是否有更好的解决方案从网页中提取文本?
注:我可以简单地使用strip_tags,但我想坚持使用DOMDocument。