尝试使用 Html Agility 从网站获取表返回 null

Trying to get a table from a website using Html Agility returns null

提问人:Mihalis 提问时间:10/20/2021 更新时间:10/20/2021 访问量:40

问:

我正在尝试使用 C# 中的 Html Agility Pack 从网站获取一个表,但它总是返回 null,我不明白为什么。

这是我的代码:

using (var httpClient = new HttpClient())
{
     var response = await httpClient.GetAsync("some website");
     var htmlBody = await response.Content.ReadAsStringAsync();

     var doc = new HtmlDocument();
     doc.LoadHtml(htmlBody);

     var table = doc.DocumentNode.SelectSingleNode("/html/body/div/div/div/div[2]/div[5]/div/div/table");
}

我也尝试过这个 XPath,但它仍然不起作用:

var table = doc.DocumentNode.SelectSingleNode("//*[@id=\"__layout\"]/div/div[2]/div[5]/div/div/table");

运行此变量后,该变量始终为空。我的代码有问题还是我使用的 XPath 有问题?table

C# 网页抓取 html-agility-pack

评论

0赞 NPras 10/21/2021
xpath 看起来没问题。如果您能提供它应该处理的 HTML 的最小片段,可能会更有帮助。
0赞 Veverke 12/2/2021
正如@NPras所指出的,如果没有具体的例子,你不太可能得到你正在寻找的帮助。

答: 暂无答案