温馨提示:本文翻译自stackoverflow.com,查看原文请点击:c# - Html Agility Pack xpath throws null exception
asp.net c# xpath html-agility-pack

c# - HTML Agility Pack xpath引发空异常

发布于 2020-04-06 00:03:33

我正在尝试解析此页面要选择我需要使用XPath的节点,我的XPath在浏览器中可以正常工作,但是在我的项目中使用它时,它将返回null异常。用于标题的XPath可以正常工作,但用于描述的XPath则不能。

HtmlWeb web = new HtmlWeb();
HtmlDocument document = web.Load("http://nl.aliexpress.com/item/4000646776468.html?spm=a2g0o.productlist.0.0.531f7aa3iGAnCb&algo_pvid=0b20aa21-fd7f-4826-81a5-c9aac5254da8&algo_expid=0b20aa21-fd7f-4826-81a5-c9aac5254da8-0&btsid=8849a0ec-e95d-447f-a6f9-34dcd58f1381&ws_ab_test=searchweb0_0,searchweb201602_4,searchweb201603_53");
        ProductModel product = new ProductModel { 
             Title = document.DocumentNode.SelectSingleNode("//head/title").InnerText,
             Description = document.DocumentNode.SelectSingleNode("/html/body/div[5]/div/div[3]/div[2]/div[2]/div[1]/div/div[2]/div[1]/div/div/div/div[1]/p[2]").InnerText};
        return View(product);

查看更多

提问者
Jules
被浏览
94
Jules 2020-02-08 06:29

实际上,动态呈现内容确实是一个问题。对于那些遇到某些问题的人,如果您使用的是c#,请看一下 selenium 。我使用操纵up的库切换到节点。