WPF C#,解析htmlAgilityPack中的webbrowser内容

WPF C#,解析htmlAgilityPack中的webbrowser内容,c#,wpf,webbrowser-control,html-agility-pack,C#,Wpf,Webbrowser Control,Html Agility Pack,我需要从一个网站上删除一些数据,我创建了一个webbrowser,允许用户登录并使用搜索工具,一旦他搜索并获得了带有结果的列表,我希望能够获得这些数据,进行进一步的分析,并进行离线访问 正如我所说的,对我来说最简单的方法是使用webbrowser,它可以开箱即用、登录、冲浪,然后当我到达相应的页面时,我就有了webbrowser.Document,它是一个mshtml.HTMLDocumentClass(如果我正确的话)。 但是HtmlAlityPack请求aHtmlDocument 从一个解析

我需要从一个网站上删除一些数据,我创建了一个webbrowser,允许用户登录并使用搜索工具,一旦他搜索并获得了带有结果的列表,我希望能够获得这些数据,进行进一步的分析,并进行离线访问

正如我所说的,对我来说最简单的方法是使用webbrowser,它可以开箱即用、登录、冲浪,然后当我到达相应的页面时,我就有了
webbrowser.Document
,它是一个
mshtml.HTMLDocumentClass
(如果我正确的话)。 但是HtmlAlityPack请求a
HtmlDocument


从一个解析到另一个的最简单方法是什么?请注意webbroser是WPF webbrowser

您可以将网站作为字符串下载并存储在临时文件中,然后使用

HtmlDocument doc = new HtmlDocument();
doc.Load("file.htm");
或直接从流中:

doc.Load(iostream);
或者更直接地从字符串

doc.LoadHtml("<html>...</html>")
doc.LoadHtml(“…”)

我认为这很适合你的情况。我相信您的webbrowsercontrol有一种获取完整源代码的方法。

您可以将网站作为字符串下载并存储在临时文件中,然后使用

HtmlDocument doc = new HtmlDocument();
doc.Load("file.htm");
或直接从流中:

doc.Load(iostream);
或者更直接地从字符串

doc.LoadHtml("<html>...</html>")
doc.LoadHtml(“…”)

我认为这很适合你的情况。我相信您的webbrowsercontrol有一种方法可以获取完整的源代码。

不需要临时的额外文件,只需要从正确的类进行解析

string html = (webBrowser.Document as HTMLDocument).documentElement.innerHTML;
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);

从现在起。。愉快的废弃:)

不需要临时的额外文件,只需要从正确的类进行解析

string html = (webBrowser.Document as HTMLDocument).documentElement.innerHTML;
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);
从现在起。。快乐刮痧:)