使用HTML Agility Pack在c#中查找包含多个关键字的链接

时间:2018-05-22 10:38:45

标签: c# html-agility-pack

我正在编写一个解析网站的程序。

我设法在网站上找到一个链接,但我需要传递确切的GSL字词才能找到它。

我正在寻找一种方法来做同样的事情,但是通过部分内部文本找到它

示例:

  • innertext是:“我的名字是”

我希望只能通过

找到它
  • “嗨我的”

        foreach (var title in htmlNodes)
        {
            if (keywords == title.SelectSingleNode("div/h1").InnerText)
            {
                if (color == title.SelectSingleNode("div/p").InnerText)
                {
                    Console.WriteLine(title.SelectSingleNode("div/p/a").GetAttributeValue("href", "pas d'addresse"));
                }
            }
        }
    

此处关键字需要与div / h1中的innertext完全匹配。我希望它是偏袒的。

这是html代码:

<article>
    <div class="inner-article">
        <a style = "height:150px;" href="/shop/shirts/c712g63kx/p1us9bkh7">
            <img width = "150" height="150" src="//assets.supremenewyork.com/146319/vi/qW2Nur88W30.jpg" alt="Qw2nur88w30">
        </a>
        <h1>
            <a class="name-link" href="/shop/shirts/c712g63kx/p1us9bkh7">Tiger Stripe Rayon Shirt</a>
        </h1>
        <p>
             <a class="name-link" href="/shop/shirts/c712g63kx/p1us9bkh7">Teal</a>
        </p>
    </div>
</article>

谢谢大家的回答!

1 个答案:

答案 0 :(得分:0)

我发现了如何解决我的问题。实际上很简单。这是代码:

if ((title.SelectSingleNode("div/h1").InnerText).Contains(keywords))

现在的问题是不区分大小写。