c#提取html中的文本,c# – 如何从html中提取文本
时间: 2024-02-23 22:04:09 浏览: 19
在 C# 中提取 HTML 中的文本可以通过使用 HtmlAgilityPack 库来实现。具体实现步骤如下:
1. 安装 HtmlAgilityPack 库
在 Visual Studio 中打开 NuGet 包管理器,搜索 HtmlAgilityPack 并进行安装。
2. 加载 HTML 文档
使用 HtmlAgilityPack 库中的 HtmlDocument 类来加载 HTML 文档,示例代码如下:
```
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);
```
其中,`html` 为 HTML 文档的字符串表示。
3. 提取文本
使用 HtmlAgilityPack 库中的 SelectNodes 和 SelectSingleNode 方法来提取 HTML 文档中的文本。例如,要提取 HTML 文档中所有的段落文本,可以使用以下代码:
```
var paragraphs = doc.DocumentNode.SelectNodes("//p");
foreach (var paragraph in paragraphs)
{
string text = paragraph.InnerText;
// 处理文本...
}
```
其中,`//p` 表示选取 HTML 文档中的所有 `<p>` 标签。
如果只需要提取文档中的某个元素的文本,可以使用 SelectSingleNode 方法。例如,要提取 HTML 文档中的标题,可以使用以下代码:
```
var title = doc.DocumentNode.SelectSingleNode("//title");
string text = title.InnerText;
// 处理文本...
```
其中,`//title` 表示选取 HTML 文档中的 `<title>` 标签。