使用htmlagilitypack从表中读取不可见数据

时间:2019-05-05 18:38:04

标签: c# html html-agility-pack

我有带表的html。 我可以获取“ col1”和“ col2”,但我不知道如何获取“数据索引”,“数据名称”的值:

<table class="footable table" id="footable">
<tbody>
<tr class="trclass red" data-index="123" data-name="Apple">
<td class="col1" >Green</td>
<td class="col2" >1.25</td>
</td></tr>
</tbody>
</table>

我尝试过的事情:

    public static void Main()
    {
        var html =
        @"<html>
        <tbody>
        <table id=\'footable\'>
            <tr class=\'trclass red\' data-index=\'123\' data-name=\'Apple\'>
            <td class=\'col1\' >Green</td>
            <td class=\'col2\' > 1.25</td>
        </table>
        </tbody></html>";

        var htmlDoc = new HtmlDocument();
        htmlDoc.LoadHtml(html);

        var tbody = htmlDoc.DocumentNode.SelectNodes("//table[contains(@id, 'foo')]//tr//td");

        foreach(var nob in tbody)
        {
             Console.Write(nob.InnerHtml);  
        }
    }

我知道我可以使用nob.Attributes [“ data-index”],但是我的数据位于 td 之前的 tr 中,其中我的“绿色”和“ 1.25“。

0 个答案:

没有答案