2012-04-01 61 views
1

我需要使用HTML敏捷包解析動態生成的HMTL代碼。如何使用HTML Agility Pack動態解析HTML代碼?

例如下面的代碼:

<div class="navigation_noClass"> There are 43 articles </div> 

沒有在Web瀏覽器的頁面源代碼顯示選項,即這個代碼可以使用一些檢查工具(如Firebug)纔可以看到,檢查上下文...

+0

您可以在每行的開始處使用四個空格格式化代碼 – dldnh 2012-04-02 00:22:55

回答

0

就在這一刻,它聽起來像是將直接收到的HTML提供給Agility包,因此缺少一些常規瀏覽器會執行的一些(重要的)步驟。 即執行Javascript和/或CSS。

執行Javascript有許多選項,但大多數合理的「自包含」選項要求您重新創建DOM和關聯的功能。不平凡。

然後就是那些CSS包含內容的場合(比如Before/After僞元素)。據我所知,在瀏覽器之外的HTML源代碼上模擬CSS行爲並沒有太多的庫。

所有這一切意味着,如果您確實需要捕獲Javascript和/或CSS執行的輸出,可能最容易將瀏覽器直接連接到應用程序處理管道(例如基於Chromium的產品之一)和詢問其DOM(以類似於許多功能Web測試套件的方式)。

注意:如果這是一個嚴重大小的服務器樣式處理任務,您可能希望將此類處理分配到專用服務器/應用程序池/進程,以便在適當的正常運行時間和/或內存中爲您的應用程序提供戰鬥機會。