首页 新闻 赞助 找找看

HtmlAgilityPack xpath问题 !!!

0
悬赏园豆:10 [已解决问题] 解决于 2013-03-07 14:00
 
  public static readonly string xpath = "/html/body/div[6]/div[2]/div[1]/ul[1]/li", url = "www.zerodm.cn";

string html = HAPCommon.GetHtmlContentByURL(string.Format("http://{0}/", url));
                HtmlAgilityPack.HtmlDocument htmldoc = new HtmlAgilityPack.HtmlDocument();
          htmldoc.LoadHtml(html);

          HtmlNodeCollection nodes
= htmldoc.DocumentNode.SelectNodes(xpath); //HtmlAgilityPack.HtmlNode xhtml = new HtmlAgilityPack.HtmlNode(HtmlAgilityPack.HtmlNodeType.Element,htmldoc, 0); return nodes;


Nodes is  null

 

xpath 是用 Firebug 找到的路径

问题补充:

我想知道是那里错误了!。 如何修改。

Mundo Novo的主页 Mundo Novo | 初学一级 | 园豆:69
提问于:2013-03-07 12:30
< >
分享
最佳答案
0

你是不是想取到

<em>0</em><span> <font color="red">00-00</font></span><a href="http://t.qq.com/zerodanmei" target="_blank"><font color="purple">ZERO耽美微博,求收听、转播、吐槽!</font></a>

 

如果是 把 6 改成 5

如果不是, 则 /div[6]/div[2]/div[1]下是没有ul的

收获园豆:10
Yu | 专家六级 |园豆:12980 | 2013-03-07 13:42

是的

我想把UL下的LI全部获取到!

Mundo Novo | 园豆:69 (初学一级) | 2013-03-07 13:47

@Mundo Novo: 那你把 6 改成 5

共有 21 个li

Yu | 园豆:12980 (专家六级) | 2013-03-07 13:49

@Yu: 非常感谢你。对了。确实是我想要的结果

 

我太相信firebug 了 /html/body/div[6]/div[2]/div/ul/li/a/font

Mundo Novo | 园豆:69 (初学一级) | 2013-03-07 13:59

@Yu: 6改成5就对了。! 太感谢了! 要不今天一天都不知道。

Mundo Novo | 园豆:69 (初学一级) | 2013-03-07 14:00

@Mundo Novo: 您能给我大概讲解一些为什么是5么, 我数节点的时候他确实是第6个DIV 

Mundo Novo | 园豆:69 (初学一级) | 2013-03-07 14:05

@Yu: 如果下标从0开始 5那是对了 可是下标应该是1开始啊

Mundo Novo | 园豆:69 (初学一级) | 2013-03-07 14:06

@Mundo Novo: 

下标从1开始是没错的

但你要看实际的 html source

第一层共才 6个 div

Yu | 园豆:12980 (专家六级) | 2013-03-07 14:12

@Yu:  果然还得还继续校验一遍才行!

Mundo Novo | 园豆:69 (初学一级) | 2013-03-07 14:39
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册