我想做的事情:
我希望从Google Chrome浏览器中获取当前标签页的HTML。
我不想这样做:
获取当前标签页的URL,然后使用webClient.DownloadString
来获取HTML。(我已经这样做了)
对我来说,从Google Chrome而不是当前Google Chrome URL获取HTML非常重要。
我尝试过的方法:
WebKit.NET
WebKit.NET可以让我像Google Chrome一样浏览网址。
我想要“连接”到当前的Google Chrome窗口,然后进入当前标签页窗口,将当前标签页文档插入WebKit.DOM.Document
中。
在另一个项目中,我使用了SHDocVw.ShellWindows
(ShellWindows = 所有支持的窗口),SHDocVw让我获取当前Internet Explorer标签页的当前HTML。
例如:
Dim shellWindows As New SHDocVw.ShellWindows
For Each Ie As SHDocVw.InternetExplorer In shellWindows
Dim htmlDoc As mshtml.HTMLDocument = Ie.Document
Next
SHDocVw仅适用于Internet Explorer
。
我该如何在Chrome标签之间浏览,然后将HTML插入字符串列表中?
我怀疑答案在WebKit.Interop.dll
中,但我对此库没有经验。
我相信有人有这个问题的解决方案,
标签窗口的类名是Chrome_RenderWidgetHostHWND
(使用spy++),
我认为我不能从当前标签Handle
获取HTML,
但也许我可以将句柄转换为WebKit.DOM.Document
- 但我更喜欢检查第一个选项。
对我来说,以正确的方式和最好的方式完成项目非常重要。