HtmlAgilityPack 中的 SelectNodes 总是 return null
SelectNodes in HtmlAgilityPack always return null
我正在尝试从此站点获取数据:https://www.hltv.org/results,但它不起作用。 SelectNodes 总是 returns null,我试过使用 xpath、完整的 xpath 等等以及除 HtmlAgilityPack 以外的其他东西。也许它不是 HtmlAgilityPack,也许问题出在标签中。
请查看代码并查看标签,看看我是否正确复制了它:
HtmlWeb web = new HtmlWeb();
var doc = web.Load("https://www.hltv.org/results");
var teams = doc.DocumentNode.SelectNodes("//*[@class='team team-won']");
请帮忙,谢谢!
HtmlAgilityPack 不处理 javascript,因此您可以使用 selenium 通过 webDriver 存储 html 源代码。
IWebDriver webDriver = new ChromeDriver();
webDriver.Url = "https://www.hltv.org/results";
var pageSource = webDriver.PageSource;
var doc = new HtmlDocument();
doc.LoadHtml(pageSource);
var xPath = @"//*[@class='team team-won']";
var node = doc.DocumentNode.SelectSingleNode(xPath);
Console.WriteLine(node.InnerText);
确保您已经下载 webDriver 并将其存储在同一目录中。(我使用 chrome 从此处 https://chromedriver.chromium.org/downloads 下载的驱动程序)
仅对文件使用加载。在此示例中,您将加载一个 url,
所以你应该使用 web.LoahHtml
如果你这样做。它会起作用
我正在尝试从此站点获取数据:https://www.hltv.org/results,但它不起作用。 SelectNodes 总是 returns null,我试过使用 xpath、完整的 xpath 等等以及除 HtmlAgilityPack 以外的其他东西。也许它不是 HtmlAgilityPack,也许问题出在标签中。 请查看代码并查看标签,看看我是否正确复制了它:
HtmlWeb web = new HtmlWeb();
var doc = web.Load("https://www.hltv.org/results");
var teams = doc.DocumentNode.SelectNodes("//*[@class='team team-won']");
请帮忙,谢谢!
HtmlAgilityPack 不处理 javascript,因此您可以使用 selenium 通过 webDriver 存储 html 源代码。
IWebDriver webDriver = new ChromeDriver();
webDriver.Url = "https://www.hltv.org/results";
var pageSource = webDriver.PageSource;
var doc = new HtmlDocument();
doc.LoadHtml(pageSource);
var xPath = @"//*[@class='team team-won']";
var node = doc.DocumentNode.SelectSingleNode(xPath);
Console.WriteLine(node.InnerText);
确保您已经下载 webDriver 并将其存储在同一目录中。(我使用 chrome 从此处 https://chromedriver.chromium.org/downloads 下载的驱动程序)
仅对文件使用加载。在此示例中,您将加载一个 url, 所以你应该使用 web.LoahHtml 如果你这样做。它会起作用