2010-10-02 96 views
10

我在使用Javascript動態填充Html Agility包的網站內容。Html Agility Pack:查找註釋節點

基本上,我在尋找XPATH "\\div[@class='PricingInfo']",但那個div節點正在通過Javascript寫入DOM。

所以,當我通過Html Agility pack加載頁面時,上面提到的XPATH無法找到。

原來在我想解析特定腳本塊之前有一條評論。

<!--Module 328 Buying Options Table--> 
<script type="text/javascript" language="JavaScript"> 
    var data = { 
     price: 30.00 
    } 
</script> 

對於這個網站,有很多的腳本塊,所以我需要在找到這個自動生成評價<!--Module 328 Buying Options Table-->和節點的兄弟將它縮小將是正確的腳本塊。

有關如何搜索特定評論然後獲取相鄰腳本塊的任何想法?

謝謝!

+1

+1不使用正則表達式! – TrueWill 2010-10-02 03:23:54

回答

15
htmlDoc.DocumentNode.SelectSingleNode("//comment()[contains(., 'Buying Options')]/following-sibling::script") 
+0

像一個魅力工作。謝謝!現在,我需要一種解析Javascript對象的方法。 – Abe 2010-10-02 03:32:06

+0

只需添加一件事。一旦我收到腳本說明,我就可以使用正則表達式解析出我需要的信息。謝謝! – Abe 2010-10-02 08:28:57