如何使用HtmlAgilityPack获取链接(href)值

时间:2013-06-21 10:48:49

标签: c# html-agility-pack

我一直在研究桌面应用程序,我是获取链接的href值的结构。我正在使用HtmlAgilityPack来解析网页。 这是代码

int count=0;
foreach (HtmlNode table in doc.DocumentNode.SelectNodes("//div[@id='ann123']//table"))
            {

            foreach (HtmlNode row in table.SelectNodes("tr"))
            {
                DataRow dr = dt.NewRow();

                foreach (HtmlNode cell in row.SelectNodes("td"))
                {
                    if ((count % 2 == 0))
                    {
                        dr["Name"] = cell.InnerText.Replace(" ", " ");
                    }
                    else
                    {
                        HtmlAttribute att = cell.Attributes["href"];

                        dr["Value"] = cell.InnerText.Replace(" ", " ") + att.Value;
                        dt.Rows.Add(dr);
                    }
                    count++;
                }
            }

此代码在尝试在dr [“Value”]中打印“att.Value”时出错。如果我删除“att.Value”它打印文本罚款。但我也想要链接。 当我打印“cell.InnerHtml;”的值时我得到这样的东西,

<span><a href="uploads/NRI.pdf" target="_blank" style="font-size:12px; font-family:Arial, Verdana, Georgia, Tahoma; color:#0B2C57;">B.Tech Admission List Under NRI Category 2013-14</a></span>

我想要的是获取href值,即“uploads / NRI.pdf”作为字符串并将其显示为我的应用程序中的链接,因为它是html中的链接表,我想要每个表的链接条目。 我发现类似的东西:How to get a link's title and href value separately with html agility pack?

帮助社区?

0 个答案:

没有答案