【问题标题】:Scraping an exact string with HtmlAgilityPack使用 HtmlAgilityPack 抓取一个精确的字符串
【发布时间】:2017-01-25 09:40:50
【问题描述】:

我正在尝试从 YouTube 视频中抓取视频标签,即使我被卡住了,它也应该很简单。 我找不到很多关于我试图找到的文档,所以现在我问你谁有使用 HtmlAgilityPack 的经验。

我想把它刮掉的东西。

video:tag" content="Comedy">

以及所有其他video:tag

如您所见,标签是可区分的。 然而,这就是我得到的结果,我不知道如何获取这些标签。

如何获取第一个视频标签并将其显示在 MessageBox.Show();

    private void btnLoad_Click(object sender, EventArgs e)
    {
        HtmlAgilityPack.HtmlDocument htmlDoc = new HtmlAgilityPack.HtmlDocument();
        htmlDoc.LoadHtml("https://www.youtube.com/watch?v=ilh3hxNdpZs");

        htmlDoc.DocumentNode.Descendants("video:tag");
    }

【问题讨论】:

    标签: c# html web-scraping html-agility-pack scrape


    【解决方案1】:

    我可以看出问题可能是在 html 文档中使用了错误的方法。 htmlDoc.LoadHtml(...) 实际上接受以字符串形式表示的实际 html/xml 作为参数,而不是 html 页面的 uri。

    在您的场景中,您可以尝试使用 HtmlWeb 类。 你可以使用

    var htmlWeb = new HtmlWeb();
    

    htmlWeb.Load(url: "https://www.youtube.com/watch?v=ilh3hxNdpZs") 将返回带有已解析 html 页面的 HtmlDocument 实例。

    视频标签的查询看起来不错,应该匹配视频标签。

    我希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2023-03-27
      • 2022-11-30
      • 1970-01-01
      • 1970-01-01
      • 2017-01-20
      • 2012-07-20
      • 1970-01-01
      • 1970-01-01
      • 2018-10-27
      相关资源
      最近更新 更多