如何從Selenium Driver.PageSource獲取HtmlAgilityPack.HtmlDocument?

c# html-agility-pack selenium vb.net

我正在嘗試將HtmlAgilityPack與Selenium一起使用。我想做一些測試,但不知道如何從Selenium Driver.PageSource String加載HtmlDocument。有幫助嗎? (c#或vb.net)

這裡的代碼......

Dim driver As IWebDriver
Dim ChromeOptions As New ChromeOptions
driver = New ChromeDriver("C:\ChromeDriver", ChromeOptions)
driver.Navigate.GoToUrl("www.Google.com")

Dim doc As New HtmlDocument
Dim wb As New HtmlWeb
doc = wb.LoadFromBrowser(driver.PageSource)

注意我的問題是關於Selenium和HtmlAgilityPack之間的互動。

熱門答案

我找到了解決方案:當我們想要在Selenium和HtmlAgilityPack之間進行交互時,我們不需要創建HtmlWeb的實例,因為我們已經有了Selenium Browser。所以直接從Driver.PageSource加載HtmlDocument:

Dim driver As IWebDriver
Dim ChromeOptions As New ChromeOptions
driver = New ChromeDriver("C:\ChromeDriver", ChromeOptions)
driver.Navigate.GoToUrl("www.Google.com")

Dim doc As New HtmlDocument
doc.LoadHtml(driver.PageSource)

由於在互聯網上沒有太多類似的幫助,關於Selenium和HtmlAgilityPack之間的互動,我發布了自己的答案,也許可以幫助。



Related

許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因