Как сделать, чтобы innertext искал текст только на видимой части, а не по всей внутрянке?

  • Автор темы Автор темы awelowgo
  • Дата начала Дата начала

awelowgo

Client
Регистрация
23.12.2020
Сообщения
158
Реакции
58
Баллы
28
Как сделать, чтобы innertext искал текст только на видимой части, а не по всей внутрянке?

Я вижу на странице одну кнопку "ПОдписаться", он видит 3 лярда и тыкает не по ней, как быть? Может есть какой то JS или C# который кликал бы?
 
№ совпадений всегда разный, то 0, то 10 , то 20 и как быть?
 
@awelowgo Часто встречаю что последний номер совпадения всегда верный. Возможно тут тоже прокатит это. Проверьте. В этом случае в качестве последнего номера совпадения в кубике запишите end.

Если в этом случае это не применимо, то попробуйте регулярку поиска усложнить, напрмиер добавить поиск начала и/или конца строки: ^Подписаться$
 
  • Спасибо
Реакции: awelowgo и Alex.A
@awelowgo Часто встречаю что последний номер совпадения всегда верный. Возможно тут тоже прокатит это. Проверьте. В этом случае в качестве последнего номера совпадения в кубике запишите end.

Если в этом случае это не применимо, то попробуйте регулярку поиска усложнить, напрмиер добавить поиск начала и/или конца строки: ^Подписаться$

А если мне допустим нужны 3 кнопки и нажать одну рандомную что в таком случае делать?
 
Используйте родительские элементы, а так же атрибуты отвечающие за видимость.
 
Тогда в качестве номера совпадения можно использовать random.

Вот там нужный нам есть, 30, 40 и 50, я хочу кликнутьна 30 я килкаю, на следущий раз на этой же странице уже нужные элементы это 32,42,52 как тогда быть? рандом не помогает
 
фейсбук старница видео, не знаюк ак скинуть просто)
Попробуй сам тогда.


C#:
Развернуть Свернуть Копировать
HtmlElementCollection hec = instance.ActiveTab.FindElementsByXPath("XPATH");
                foreach (var item in hec)
                {
                    project.SendInfoToLog(item.GetAttribute("topInTab"),true);
                }

Сюда свой путь вставь и скину чё в логе в итоге будет
 
Попробуй сам тогда.


C#:
Развернуть Свернуть Копировать
HtmlElementCollection hec = instance.ActiveTab.FindElementsByXPath("XPATH");
                foreach (var item in hec)
                {
                    project.SendInfoToLog(item.GetAttribute("topInTab"),true);
                }

Сюда свой путь вставь и скину чё в логе в итоге будет

ща
 
Попробуй сам тогда.


C#:
Развернуть Свернуть Копировать
HtmlElementCollection hec = instance.ActiveTab.FindElementsByXPath("XPATH");
                foreach (var item in hec)
                {
                    project.SendInfoToLog(item.GetAttribute("topInTab"),true);
                }

Сюда свой путь вставь и скину чё в логе в итоге будет


Компиляция кода Ошибка в действии "CS1003" "Syntax error, ',' expected". [Строка: 1; Cтолбец: 90]
 
А сам путь сюда скинь

//*[@id="mount_0_0_Jl"]/div[1]/div[1]/div[starts-with(@class,'rq0escxv')]/div[3]/div[starts-with(@class,'ehxjyohh')]/div[starts-with(@class,'pedkr2u6')]/span[starts-with(@class,'tojvnm2t')]/div[starts-with(@class,'oajrlxb2')]/i[starts-with(@class,'hu5pjgll')]
 
//*[@id="mount_0_0_Jl"]/div[1]/div[1]/div[starts-with(@class,'rq0escxv')]/div[3]/div[starts-with(@class,'ehxjyohh')]/div[starts-with(@class,'pedkr2u6')]/span[starts-with(@class,'tojvnm2t')]/div[starts-with(@class,'oajrlxb2')]/i[starts-with(@class,'hu5pjgll')]
На нужной кнопке Подписаться написано?
 
На нужной кнопке Подписаться написано?

там крестик, подписаться это как пример, если ты реально хорош разбираешься, можно я тебе в телегу лучше напишу, чем на форуме?
 

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