0

私;PhantomJsdriverでSeleniumを使用しています

 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、完全なサイトコンテンツを適切に取得しています。

何が悪いの?本当に奇妙な行動。

4

1 に答える 1

0

タイミングの問題が発生しています。コンテンツ全体DOMがロードされる前に、コンテンツが取得されます。Thread.Sleep(2000)これを確認する最も簡単な方法は、コンテンツを取得する前に追加することです。ただし、これは良い方法ではないため、コンテンツを取得する前にドライバーが提供するイベントを利用するか、コンテンツを取得する前に特定のDOM要素が読み込まれるのを待ちます。

于 2013-03-30T11:11:07.260 に答える