Как найти Xpath href по части имени адреса?

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 509
Благодарностей
1 311
Баллы
113
Доброго времени суток.
Как найти href ссылкуhref="https://sta.com/value/listings/930/Black | Shah | Kracov 1993", зная лишь часть имени Black | Shah | Kracov 1993?

//*[contains(text(),'[B]Black | Shah | Kracov 1993[/B]')] - не находит, возможно есть возможность подправить код, что бы нашло?

И возможно ли в моем случае найти цену 0.16 , или ниже ее, если в ней есть лишние элементы <b>$</b>?

//*[(text()<="0.16 ") - в моем случае не работает...


HTML:
<div class="clearfix ss">
  <ul class="ip_options for_work_rigth_click">
    <li><a cc="link" target="_blank" rel="noopener" class="link_to_steam" href="https://sta.com/value/listings/930/Black | Shah | Kracov 1993">Sout</a></li>
  </ul>
  <div class="ip_price" state="disabled">

      </div>

      <div id="ipPriceText">
        <b>$</b> 0.16
      </div>
    </div>

  </div>
</div>
 

SergSh

Client
Регистрация
10.05.2017
Сообщения
541
Благодарностей
395
Баллы
63

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 509
Благодарностей
1 311
Баллы
113

SergSh

Client
Регистрация
10.05.2017
Сообщения
541
Благодарностей
395
Баллы
63

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 509
Благодарностей
1 311
Баллы
113
парсинг в инстансе или библиотекой?
Есть сайт, вот часть его кода:
HTML:
<div class="clearfix ss">
  <ul class="ip_options for_work_rigth_click">
    <li><a cc="link" target="_blank" rel="noopener" class="link_to_steam" href="https://sta.com/value/listings/930/Black | Shah | Kracov 1993">Sout</a></li>
  </ul>
  <div class="ip_price" state="disabled">

      </div>

      <div id="ipPriceText">
        <b>$</b> 0.16
      </div>
    </div>

  </div>
</div>
Мне нужно указав имя и цену - дорогой Xpath - сделать клик на предмет с помощью Xpath - если цена не выше 0.16 (соответственно цена может меняться). Я так понимаю одной дорогой Xpath тут не обойтись, так как Xpath - не умеет решать уравнения, если в тексте лежит лишний символ <b>$</b>? Нужно сначала отдельно парсить цену, потом кубиками смотреть устраивает ли нас цена, после чего делать клик на предмет?
 

SergSh

Client
Регистрация
10.05.2017
Сообщения
541
Благодарностей
395
Баллы
63
C#:
string minPrice = "0.16";//ТУТ минимальная цена
System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("EN");

var hec = instance.ActiveTab.FindElementsByXPath("//div[@class = 'clearfix ss']"); //тут берем все ноды
if(hec.Count > 0)
{
    foreach(var el in hec)
    {
        var priceNode = el.FindChildByXPath(".//div[@id = 'ipPriceText']", 0);
        string pt = priceNode.InnerText;
        if(pt.Contains("$"))
        {
            string nodePrice = Regex.Replace(pt, @"[^0-9\.,]", "");
            if(double.Parse(minPrice.Replace(",", "."), culture) > double.Parse(nodePrice.Replace(",", "."), culture))
            {
                //ТУТ клик
               
            }
        }
    }
}
В коде берет все ноды <div class="clearfix ss"> и кликает по первой подходящей - клик не реализован.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)