Как напечатать список месяцев, представленных в выпадающем списке, используя Selenium Python с Webdriver - PullRequest
0 голосов
/ 21 сентября 2018

раскрывающиеся сведения

 <select name="fromMonth">
 <option value="1">January
 </option><option value="2">February
 </option><option value="3">March
 </option><option value="4">April
 </option><option value="5">May
 </option><option value="6">June
 </option><option value="7">July
 </option><option value="8">August
 </option><option selected="" value="9">September
 </option><option value="10">October
 </option><option value="11">November
 </option><option value="12">December
 </option></select>

Я хотел бы напечатать
Январь
Февраль
и так далее ...

Ответы [ 4 ]

0 голосов
/ 21 сентября 2018

В соответствии с HTML для печати списка месяцев, представленных в раскрывающемся списке, вы можете использовать следующее решение:

selectmonth = Select(driver.find_element_by_name('fromMonth'))
for option in selectmonth.options:
    print(option.text)
0 голосов
/ 21 сентября 2018

Я думаю, что это "November" вместо "No введите код здесь vember"

В JAVA вы можете использовать вот так, Вы можете применить ту же логику в Python

//locate select drop down
WebElement monthsElement = driver.findElement(By.name("fromMonth"));

// use select class
Select monthsDrop = new Select(monthsElement);

//store the list all months in list using getOptions()
List<WebElement> allmonths = monthsDrop.getOptions();

//traverse and print all elements
for (WebElement tempmonth : allmonths) {
    System.out.println(tempmonth.getText());
}
0 голосов
/ 21 сентября 2018
dropdown_data = driver.findElement(By.xpath("Xpath of the dropdown")) 

#, который выбирает раскрывающийся список

for i in range len(dropdown_data):
    print(dropdown_data[i].text)
0 голосов
/ 21 сентября 2018

Это поможет:

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()

url='' //of webpage

driver.maximize_window()

driver.get(url)

listofelements=driver.find_elements(By.XPATH,'//*[@name="fromMonth"]/option') //to take all elements matching xpath

for i in range(len(listofelements)):
    print(listofelements[i].text) //print all elements of list
...