Более читаемый Xpath для выпадающего списка Contract Month
будет
//div[text()='Contract Month']//following-sibling::sgx-input-select//input
Селектор CSS для выпадающего списка Contract Month
options
.sgx-select-picker-list .sgx-select-picker-option label .sgx-select-picker-label
Вы дали щелкнуть раскрывающийся список «Месяц контакта», а затем нашли options
, используя вышеуказанные идентификаторы. Тогда вы можете инициировать щелчок на опции
код псевдо:
# Adding implicit wait
driver.implicitly_wait(10)
# Page has ajax loading where the dropdown loads slowly
# Adding sleep now. This has to be handled by webdriver wait
time.sleep(10)
dropdown = driver.find_element_by_xpath("//div[text()='Contract Month']//following-sibling::sgx-input-select//input")
# On clicking the dropdown, the options loads
dropdown.click();
options = driver.find_elements_by_css_selector(".sgx-select-picker-list .sgx-select-picker-option label .sgx-select-picker-label")
optionSize = len(options);
for index in range(optionSize - 1):
dropdown.click();
# Find the options again as click on Month will reset the options
options = driver.find_elements_by_css_selector(".sgx-select-picker-list .sgx-select-picker-option label .sgx-select-picker-label")
options.index(index).click()
# Page has ajax loading where the dropdown loads slowly
# Adding sleep now. This has to be handled by webdriver wait
time.sleep(10)