Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用带Webdriver的Selenium Python打印下拉列表中的月份列表_Python_Selenium_Selenium Webdriver_Drop Down Menu_Webdriver - Fatal编程技术网

如何使用带Webdriver的Selenium Python打印下拉列表中的月份列表

如何使用带Webdriver的Selenium Python打印下拉列表中的月份列表,python,selenium,selenium-webdriver,drop-down-menu,webdriver,Python,Selenium,Selenium Webdriver,Drop Down Menu,Webdriver,下拉详细信息 <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"

下拉详细信息

 <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>

一月
二月
前进
四月
也许
六月
七月
八月
九月
十月
十一月
十二月
我想打印
一月
二月
如此一来……

这将有助于:

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
我认为它是
“十一月”
而不是
“否”
在这里输入code
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());
}
//定位选择下拉列表
WebElement monthElement=driver.findElement(By.name(“fromMonth”);
//使用选择类
选择MonthDrop=新选择(MonthElement);
//使用getOptions()在列表中存储所有月份的列表
List allmonths=monthsDrop.getOptions();
//遍历并打印所有元素
对于(WebElement tempmonth:allmonths){
System.out.println(tempmonth.getText());
}
#这将选择下拉列表

for i in range len(dropdown_data):
    print(dropdown_data[i].text)

根据HTML打印下拉列表中的月份列表,您可以使用以下解决方案:

selectmonth = Select(driver.find_element_by_name('fromMonth'))
for option in selectmonth.options:
    print(option.text)

由于用户共享的下拉元素具有“选择”标记,因此可能的重复项看起来非常完美。但是,您可能希望根据用户的请求将其移植到Python。这看起来不像是有效的Python可能应该是#,
for
语句将给出语法错误。如果您的意图是
在范围内的i(len(dropdown_data))
,它也不会起作用,因为我将是一个整数,所以您不能执行
i.text
。常识都德。!
selectmonth = Select(driver.find_element_by_name('fromMonth'))
for option in selectmonth.options:
    print(option.text)