2017-01-25 58 views
0

我试图从YouTube视频中刮取视频标签,即使卡住了它也应该很简单。 我无法找到关于我想要找到的许多文档,所以现在我问你谁有HtmlAgilityPack的经验。用HtmlAgilityPack刮取确切的字符串

我试图刮这个东西。

video:tag" content="Comedy"> 

和所有其他video:tag

enter image description here

正如你所看到的标签区分。 但是,这是我有多远&我不知道如何抓住这些标签。

如何抓住第一个视频标签并将其显示在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"); 
    } 

回答

1

我可以告诉大概问题是在html文档中使用了错误的方法。 htmlDoc.LoadHtml(...)实际上接受作为参数的实际html/xml表示为字符串,而不是HTML页面的URI。

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

var htmlWeb = new HtmlWeb(); 

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

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

我希望这会有所帮助。