2012-03-18 76 views
0

我有以下腳本,除了兩件事情,作品幾乎罰款:提取文本

  • 我仍然有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。

回答