C#HttpWebResponse在表中或通过xpath获取文本

时间:2018-03-18 17:09:02

标签: c# httpwebrequest httpwebresponse

我试图从我的httpwebresponse中输出一个特定的字符串..

目前:

string str3 = (UrlResponse);

如果我使用:

Console.Write(str3);

它会输出:

<html>

<head>
     <title>Hello World</title>
</head>

<body>
    Random content....
    <tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
    </tr>
</body>
</html>

但我想在

中输出文字
<td>2</td>

如此预期的输出:

2

1 个答案:

答案 0 :(得分:0)

这是使用HtmlAgilityPack和xPath获取该特定值的示例。

此xPath指南可能会有所帮助: https://www.w3schools.com/xml/xml_xpath.asp

var str = @"<html>
<head>
        <title>Hello World</title>
</head>

<body>
    <table>
        <tr>
            <td>1</td>
            <td>2</td>
            <td>3</td>
        </tr>
    </table>
</body>
</html>";

var document = new HtmlAgilityPack.HtmlDocument();
document.LoadHtml(str);

// returns 2                
var value = document.DocumentNode.SelectNodes("//table//tr//td[2]")[0].InnerHtml;