这个示例来源于这个帖子 http://bbs.csdn.net/topics/392175840,需要获取内容的 html 如下:
姓名 | 学号 | 学分 | |
张三 |
|
52 | |
李四 |
|
65 |
楼主通过循环 td 元素的方式来获取内容,但是因为学号的内容是嵌套在 td 的 table 里面的,会被获取到两次。
如果使用 Less.Html,可以这样写:
foreach (Element i in q("td"))
{
if (!q(i).find("table").hasElement)
{
Console.WriteLine(i.textContent);
}
}
代码是很简短的,同样是循环,在循环里面检查一下 td 是否有嵌套的 table 就行了。Less.Html 最大程度上模仿了 jQuery 的语法,为查找元素提供更多的便利。运行结果如下:
我原来在帖子的回答中,并没有处理重复的学号,现在更正这一点。
本示例代码:GitHub 码云