gpt4 book ai didi

c# - C#中使用HtmlAgilityPack解析网页信息

转载 作者:搜寻专家 更新时间:2023-10-31 21:59:19 25 4
gpt4 key购买 nike

我正在尝试使用 HtmlAgilityPack 来解析网页信息。这是我的代码:

using System;
using HtmlAgilityPack;

namespace htmparsing
{
class MainClass
{
public static void Main (string[] args)
{
string url = "https://bugs.eclipse.org";
HtmlWeb web = new HtmlWeb();
HtmlDocument doc = web.Load(url);
foreach(HtmlNode node in doc){
//do something here with "node"
}
}
}
}

但是当我尝试访问 doc.DocumentElement.SelectNodes 时,我在列表中看不到 DocumentElement。我在引用中添加了 HtmlAgilityPack.dll,但我不知道是什么问题。

最佳答案

我有一篇文章演示了如何使用 ASP.NET 通过 HAP (HTML Agility Pack) 抓取 DOM 元素。它只是让您逐步完成整个过程。您可以看看并尝试一下。

Scraping HTML DOM elements using HtmlAgilityPack (HAP) in ASP.NET

关于您的流程,它对我来说工作正常。我已经尝试过这种方式,就像您对单个更改所做的那样。

string url = "https://www.google.com";
HtmlWeb web = new HtmlWeb();
HtmlDocument doc = web.Load(url);
foreach (HtmlNode node in doc.DocumentNode.SelectNodes("//a"))
{
outputLabel.Text += node.InnerHtml;
}

得到了预期的输出。问题是您要从 HtmlDocument 对象请求 DocumentElement,实际上应该是 DocumentNode。以下是 HTMLAgilityPack 开发人员对您遇到的问题的回复。

HTMLDocument.DocumentElement not in object browser

关于c# - C#中使用HtmlAgilityPack解析网页信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19870116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com