从webbrowser控件复制所有文本

时间:2010-04-14 12:13:04

标签: c# .net winforms browser

是否可以在不查看来源的情况下从WebBrowser控件导航到的网站上抓取所有文字?

3 个答案:

答案 0 :(得分:4)

您使用DocumentText属性或WebBrowser控件。

此属性包含您导航到的网站的HTML。

更新:(以下评论)

如果你想解析 HTML并获取它的文本部分,我建议你使用HTML Agility Pack

答案 1 :(得分:4)

string browserContents = webBrowser.Document.Body.InnerText;

答案 2 :(得分:4)

David Walker的方法很棒,如果不需要网页标题或非主要部分的任何信息。如果需要内部文本之外的东西,只有两个选项,一个是用“getElement”解析。 另一个是向webbrowser发出命令(Document.ExecCommand)以选择所有并复制到剪贴板:

wb.Document.ExecCommand("SelectAll", false, null);
wb.Document.ExecCommand("Copy", false, null);

然后终于string content = clipboard.getText();

请注意拼写和语法可能不正确,我记得我的记忆