我正在尝试在python中选择带有硒的下拉列表。 我无法正常工作。我已经尝试通过xpath在不同的链接上“单击”,并且它可以工作。但是我不知道下拉菜单。
这是我尝试使用的代码:
path = r"C:\Program Files\chromedriver_win32\chromedriver.exe"
driver = webdriver.Chrome(path)
driver.get("http://elpris.dk")
driver.find_element_by_xpath("""//*[@id="btnSelectProfile"]""").click()
答案 0 :(得分:0)
该网页是使用Angular JS编写的,它可以动态加载数据。因此,请使用WebDriverWait,以便正确加载页面。
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
path = r"C:\Program Files\chromedriver_win32\chromedriver.exe"
driver = webdriver.Chrome(path)
driver.get("http://elpris.dk")
delay = 15
wait = WebDriverWait(driver, delay)
try:
elem = wait.until(
EC.element_to_be_clickable((By.ID, 'btnSelectProfile')))
elem.click()
except Exception as e:
print(e)
另一种选择是添加一些睡眠以等待数据正确加载,如下所示:
import time
path = r"C:\Program Files\chromedriver_win32\chromedriver.exe"
driver = webdriver.Chrome(path)
driver.get("http://elpris.dk")
time.sleep(3)
driver.find_element_by_xpath("""//*[@id="btnSelectProfile"]""").click()
然后单击将起作用。