помогите добавить условия фильтров к парсингу С#

lbvf65

Client
Регистрация
20.08.2020
Сообщения
438
Благодарностей
113
Баллы
43
Просто пример фильтров какие нужны

76012

C#:
project.Variables["Q111"].Value = instance.ActiveTab.FindElementsByAttribute("a", "fulltagname", "a", "text").Count.ToString();
мне надо получить максимальное значения элементов

как я это вижу (я знаю что это не код)

C#:
!***!{
доуамент [-1] дорма [-1] тег (a;Ii)
("a", "fulltagname", "ROOT", "notext",0)
("a", "fulltagname", "CMC\.", "regexp",9)
("a", "fulltagname", "a", "text",7)
("Ii", "fulltagname", "свобода", "text",end)

}

project.Variables["Q111"].Value = instance.ActiveTab.FindElementsByAttribute!***!.Count.ToString();

в указанную переменную положить результат сколько найдено элементов ["Q111"]

заранее вас благодарю за оказанную мне помощь
 
Последнее редактирование:
Регистрация
05.06.2019
Сообщения
570
Благодарностей
453
Баллы
63
Выделенное красным на картинке, под капотом выглядит как множественное условие, в случае неуспеха в одной из логической последовательности, будет идти в глубь по ходу выполнения.

Возможно выглядит примерно так:
C#:
HtmlElement item = instance.ActiveTab.FindElementsByAttribute("a", "fulltagname", "a", "text");

if (!item.IsVoid)
{
    //выполнить действие
}
else
{
    item = instance.ActiveTab.FindElementsByAttribute("b", "fulltagname", "b", "text");

    if (!item.IsVoid)
    {
        //выполнить действие
    }
    else
    {
        item = instance.ActiveTab.FindElementsByAttribute("c", "fulltagname", "c", "text");

        if (!item.IsVoid)
        {
            //выполнить действие
        }
        else
        {
            throw new Exception("Элемент не найден на странице.");
        }
    }
}
Рекомендую не раздувать каждый if одним и тем же кодом, а использовать вызов делегата.

В данном случае, есть другой метод FindElementByXPath, xPath позволяет строить выражения или, указав | между запросами.

Пример реализации:
C#:
HtmlElement item = tab.FindElementByXPath("//a[@class='awd87d'] | //div[@class='97adhj']/a[@id='32Kda8']", 0);
if (!item.IsVoid)
{
    //выполнить действие
}
else
{
    throw new Exception("Элемент не найден на странице.");
}
 
  • Спасибо
Реакции: lbvf65

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