我已经尝试了很多它似乎无法运行的东西所以我发布这个问题,希望能从python的下拉菜单中学习选择的简单方法。
我设法打开下拉菜单但是如何从下拉列表中选择一个值(在本例中让我们说4)?
以下是打开下拉列表的代码:
#select adults
adults = driver.find_element_by_xpath("//*[@id='adults-number']").click()
下面是html,其中包含下拉列表中的所有选项(突出显示的是我想要选择的值):
答案 0 :(得分:2)
使用Select
class及其.select_by_visible_text()
方法:
from selenium.webdriver.support.select import Select
adults = Select(driver.find_element_by_id("adults-number"))
adults.select_by_visible_text("4")
请注意,我还使用更简单,更高效的“by id”定位器类型替换了“by xpath”。
工作代码(使用您的目标网站)选择成人= 4:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.select import Select
from selenium.webdriver.support.wait import WebDriverWait
driver = webdriver.Chrome()
driver.get("http://jet2.com")
wait = WebDriverWait(driver, 10)
adults_element = wait.until(EC.presence_of_element_located((By.ID, "adults-number")))
select = Select(adults_element)
select.select_by_visible_text("4")