2011-03-18 72 views
0

我想用php和dom xpath來抓取網頁數據。當我將$ node-> nodeValue存儲到我的數據庫中,或者即使我試圖回顯它時,所有標籤(如<p><br>)都缺失。所以我把所有的小節連接起來。如何解決這個問題如何在不丟失標籤的情況下刮取網頁數據

+1

請出示一些代碼。 – 2011-03-18 07:47:39

回答

3

如果你有一個節點,你需要的所有內容,因爲他們,你可以使用此功能:

function innerHTML(DOMNode $node) 
{ 
    $doc = new DOMDocument(); 
    foreach ($node->childNodes as $child) { 
    $doc->appendChild($doc->importNode($child, true)); 
    } 
    return $doc->saveHTML(); 
} 
+0

2+小時搜索,這是後變成了潮流。 – Twisty 2016-02-05 02:30:05

0

如果你正在瀏覽的DOM,最有可能不再有標籤看到。標籤現在是DOM內的節點 - 標籤中包含的原始內容是您以「字符串形式」訪問的所有內容。當然,您可以使用節點信息來重建標籤,但它們不會是原始標籤(例如,您將不得不選擇<BR><br>--您將不知道該網站原來的位置)。如果你想從原來的標籤開始,獲取由GET/POST返回的原始字節流;不要將其解析爲DOM樹。

相關問題