2013-03-30 76 views
0

我; M用硒與PhantomJsdriver奇怪硒價值迴歸

using (IWebDriver driver = new PhantomJSDriver()) 
    {     

       driver.Navigate().GoToUrl("http://www.google.com");     

       var content = driver.PageSource; >> wrong content return 
    } 

內容總是"<html><head></head><body></body></html>"

driver.PageSource正確獲取完整的網站內容。

這是怎麼回事?真的很奇怪的行爲。

回答

0

您遇到了計時問題。在加載整個DOM內容之前檢索內容。檢查內容的最簡單方法是在檢索內容之前添加Thread.Sleep(2000)。然而,這不是一個好習慣,因此在檢索內容之前利用驅動程序爲您提供的事件,或在檢索內容之前等待加載特定的元素。

+0

感謝您的及時回覆,但它不正確,因爲我可以在我的調試點(使用Visual Studio)查看這兩個值,真的很奇怪,懸停在內容和driver.pagesource上,它們顯示不同的值。我相信所有的DOM內容都是完全加載的,否則,我無法查看驅動程序。頁面導出完整的頁面內容。 –

+0

好吧,我試過2000,也許太快了,所以我增加到Thread.Sleep(10000),變量內容現在得到正確的值。謝謝。 –