<div id="divTop">
<div id="text-conent" style="width: 500px; float: right;"></div>
<div id="grid" style="margin-removed 505px; height: 700px;"></div>
</div>
我想从tag div'text - conent'获取内容,但不知道如何
答案 0 :(得分:1)
您可以使用“WebBrowser.DocumentText”属性获取您的webbroswer内容
然后您可以使用CSQuery来解析您的html或任何您喜欢的方法。 (如果你认为它更简单,甚至是正则表达式) 如果您了解JQuery,那将很容易。
https://github.com/jamietre/CsQuery
var html = myWebBrowser.DocumentText;
var dom = CQ.Create(html);
var divContent = dom.Select("#text-conent").Text();
修改强>
如果您只是想下载一个页面来获取数据,您可以删除您的网络浏览器并使用类似的东西
var dom = CQ.CreateFromUrl("http://www.test.com");
var divContent = dom.Select("#text-conent").Text();
richTextBox1.Text = divContent;
这两行将完成所有工作。
答案 1 :(得分:0)
我建议使用HtmlAgilityPack从HTML进行解析。
在您的情况下,代码将是:
HtmlAgilityPack.HtmlDocument doc = (HtmlAgilityPack.HtmlDocument)webBrowser1.Document.DomDocument;
string text = doc.GetElementbyId("text-content").InnerText;
修改强>
或者你试试这个:
text = doc.DocumentNode.SelectSingleNode("//div[@id='divTop']/div[@id='text-content']").InnerText;
答案 2 :(得分:0)
我写了一个脚本,但它告知了错误
HtmlElement texts = webBrowser1.Document.GetElementById("text-conent");
string kq = "";
foreach (var item in texts.All)
{
kq += item.InnerText + Environment.NewLine;
}
richTextBox1.Text = kq;
错误: 'object'不包含'innerText'的定义,也没有扩展方法'innerText'接受'object'类型的第一个参数(你是否缺少using指令或汇编引用)
答案 3 :(得分:0)
HtmlAgilityPack.HtmlDocument doc = (HtmlAgilityPack.HtmlDocument)webBrowser1.Document.DomDocument;
string texts = doc.DocumentNode.SelectSingleNode("//div[@class='text-conent']/p]").InnerText;
richTextBox1.Text = texts;