HtmlAgilityPack无法找到元素

时间:2017-09-27 08:15:12

标签: c# parsing html-agility-pack

我需要解析一个网站,我知道在哪里找到我正在搜索的元素:它是span class="metadata_with_icon-tags-primary_tag"

我的C#代码:

var page = new HtmlWeb().Load(url).DocumentNode.Descendants("span").Where(d => d.Attributes.Contains("class") && d.Attributes["class"].Value.Contains("metadata_with_icon-tags-primary_tag"));

我需要的物品:  enter image description here

2 个答案:

答案 0 :(得分:0)

试试这个

HtmlWeb website = new HtmlWeb();
            var html = website.Load("https://genius.com/Eminem-space-bound-lyrics").DocumentNode.InnerHtml;  

            Regex rgx = new Regex(@"<script\b[^>]*>([\s\S]*?)<\/script>", RegexOptions.IgnoreCase);
            var matches = rgx.Matches(html);
            var g = matches[14].Value;

            Regex regex = new Regex(
                @"(\[{.*}\])",
                RegexOptions.Multiline
            );

            Match match = regex.Match(g);
            var json = match.Value;

答案 1 :(得分:0)

使用span获取class="metadata_with_icon-tags-primary_tag"

HtmlNode node = htmlDoc.DocumentNode.SelectSingleNode("//span[@class='metadata_with_icon-tags-primary_tag']");