解析HTML以使用C#获取内容

前端之家收集整理的这篇文章主要介绍了解析HTML以使用C#获取内容前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在编写一个抓取一组网页的应用程序.而不是采取页面的整个源代码,我想采取所有内容并存储,并能够将页面作为纯文本存储在数据库中.内容将在其他应用程序中使用,而不是由用户阅读,因此不需要它完全是人类可读的.

起初,我正在考虑使用正则表达式,但我无法控制网页的有效性,并且很有可能没有正则表达式会给我内容.

如果我在字符串中有源代码,我怎样才能将该源代码串转换为C#中的内容

解决方法

它不是100%清楚你想要什么,但我假设你想要文本减去标记;所以:
string html;
// obtain some arbitrary html....
using (var client = new WebClient()) {
    html = client.DownloadString("https://stackoverflow.com/questions/2038104");
}
// use the html agility pack: http://www.codeplex.com/htmlagilitypack
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);
StringBuilder sb = new StringBuilder();
foreach (HtmlTextNode node in doc.DocumentNode.SelectNodes("//text()")) {
    sb.AppendLine(node.Text);
}
string final = sb.ToString();

猜你在找的HTML相关文章