获取搜索短语的链接

时间:2017-06-15 21:32:12

标签: c# search web-crawler html-agility-pack word

我正在使用HtmlAgilityPack并且在大学上我有任务获取所有链接,位于" source"和相关的。我试过这样的代码:

foreach (HtmlNode link in document.DocumentNode.SelectNodes(".//a[@href]"))
{
    if (document.DocumentNode.InnerHtml.ToString().Contains(sourcesDictionary[i]))
    {
        string hrefValue = link.GetAttributeValue("href", string.Empty);
        Console.WriteLine(hrefValue);
    }
}

但它只打印HTML Document的所有链接。为了让它正常工作,我可以改变什么?

1 个答案:

答案 0 :(得分:0)

添加突出显示的行可能有帮助

foreach (HtmlNode link in document.DocumentNode.SelectNodes(".//a[@href]"))
{
**if(link.ParentNode.InnerHtml.Contains("source")**
{
if (document.DocumentNode.InnerHtml.ToString().Contains(sourcesDictionary[i]))
{
    string hrefValue = link.GetAttributeValue("href", string.Empty);
    Console.WriteLine(hrefValue);
}
}
}