首页 新闻 会员 周边 捐助

Html Agility Pack 抓取搜狗微信搜索时部分内容无法获取

0
悬赏园豆:50 [待解决问题]

例如抓主页中的阅读量 `class=s1`的`span`,无法获取此节点,而`s2`的则无内容。

请问这是什么问题呢?如何解决?谢谢。

 1 HtmlWeb web = new HtmlWeb();
 2             HtmlDocument doc = web.Load("http://weixin.sogou.com");
 3             HtmlNode node = doc.GetElementbyId("pc_0_0");//输出node中找不到span_s1节点
 4             StreamWriter sw = File.CreateText("log.txt");
 5             foreach (HtmlNode child in node.ChildNodes)
 6             {
 7                 if (child.Name != "li")
 8                     continue;
 9                 HtmlNode hn = HtmlNode.CreateNode(child.OuterHtml);
10                 
11                 Write(sw, String.Format("公众号:{0}", hn.SelectSingleNode("//*[@class=\"account\"]").InnerText));
12                 Write(sw, String.Format("地址:{0}", hn.SelectSingleNode("//*[@class=\"account\"]").Attributes["href"].Value));
13                 Write(sw, String.Format("标题:{0}", hn.SelectSingleNode("//h3").InnerText));
14                 Write(sw, String.Format("地址:{0}", hn.SelectSingleNode("//h3").SelectSingleNode("//a").Attributes["href"].Value));
15                 Write(sw, String.Format("缩略图:{0}", hn.SelectSingleNode("//*[@class=\"img-box\"]").SelectSingleNode("//img").Attributes["src"].Value));
16                 //Write(sw, String.Format("阅读量:{0}", hn.SelectSingleNode("//*[@class=\"s1\"]").InnerText)); //节点找不到
17                 Write(sw, String.Format("简介:{0}", hn.SelectSingleNode("//*[@class=\"txt-info\"]").InnerText));
18             }
19             sw.Close();
20             Console.ReadLine();
5101白水的主页 5101白水 | 初学一级 | 园豆:152
提问于:2017-02-23 15:52
< >
分享
所有回答(1)
0

建议你把xpath语法好好看看

 

MrNice | 园豆:3468 (老鸟四级) | 2017-02-23 17:28
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册