Как правильно подобрать XPath к дропдаун меню?

justanotherVar

Пользователь
Регистрация
18.09.2016
Сообщения
66
Благодарностей
2
Баллы
8
Привет.

PHP:
instance.ActiveTab.Navigate("https://www.reg.ru/domain/new/rereg");
instance.ActiveTab.WaitDownloading();
//
//
Thread.Sleep(3000);
instance.ActiveTab.FindElementByXPath("//select[@class='double_border']",0).Click();
//Thread.Sleep(3000);
//instance.ActiveTab.FindElementByXPath("//select[@id, 'filter_expiring' and contains (text(),'28')]",0).Click();
//instance.ActiveTab.FindElementByXPath("//option[contains (text(),'28')]",0).Click();
//instance.ActiveTab.FindElementByXPath("//option[contains (text(),'Премиум')]",0).Click();

Thread.Sleep(3000);
//instance.ActiveTab.FindElementByXPath("//option[contains (text(),'28 ноября')]",0).Click();
//
//instance.ActiveTab.FindElementByXPath("//option[contains(@value,'') and contains (text(),'')]",0).SetValue("28 ноября", "Full", true);


instance.ActiveTab.FindElementByXPath("//select[contains(@id,'filter_expiring') and contains (text(),'28 ноября')]",0).Click();
Никак не могу выбрать из ниспадающего меню 28 ноября. Помогите плиз. Спасибо
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 605
Благодарностей
4 595
Баллы
113
Просто выбираешь селект и прописываешь SetValue("28", "Full", true);
 
  • Спасибо
Реакции: justanotherVar

justanotherVar

Пользователь
Регистрация
18.09.2016
Сообщения
66
Благодарностей
2
Баллы
8
Просто выбираешь селект и прописываешь SetValue("28", "Full", true);
Не работает.

Код:
instance.ActiveTab.FindElementByXPath("//select[@class='double_border']",0).SetValue("28", "Full", true);
Ещё гипотезы?
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 605
Благодарностей
4 595
Баллы
113
Не работает.

Код:
instance.ActiveTab.FindElementByXPath("//select[@class='double_border']",0).SetValue("28", "Full", true);
Ещё гипотезы?
надо выбирать номер option. Я думал, 28й оптион и есть 28 сентября. Сейчас посмотрел, там всего их штук 5.
Код:
instance.ActiveTab.FindElementByXPath("//select[@class='double_border']",0).SetValue("2", "Full", false);
 
  • Спасибо
Реакции: justanotherVar

orka13

Client
Регистрация
07.05.2015
Сообщения
2 159
Благодарностей
2 159
Баллы
113
А зачем все это, если можно либо через API (https://api.reg.ru/api/regru2/domain/set_rereg_bids), которое у них нормально в зенку адаптируется, сам через него дропы регал. По уже готовому списку шаблон делал ставку в 1 POST-запрос на все домены.

Или если так хотите через браузер, то там же просто в урле можно задать параметры filter_expiring:
https://www.reg.ru/domain/new/rereg?filter_expiring=1
 
  • Спасибо
Реакции: justanotherVar и Dimionix

justanotherVar

Пользователь
Регистрация
18.09.2016
Сообщения
66
Благодарностей
2
Баллы
8
Спасибо ребят большое!
 

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