我对Selenium非常陌生,正在尝试从以下网站上获取数据:https://www.ahla.com/statefacts。该网站保存着美国各地酒店的数据。我尝试做的最终目标是创建一个csv文件,该文件将包含一个名为'States‘的列,其他列将是关于其中的酒店的数据(例如,酒店数量,酒店房间数量等)。
我在考虑访问包含所有状态的下拉列表,然后依次单击它们并提取数据,但我甚至找不到select下拉列表。
下面是我正在运行的代码,它给了我一个NoSuchElementException:
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
driver.get("https://www.ahla.com/statefacts")
print(driver.find_element_by_css_selector("#next > div > div > div.col-md-5 > h1 > div > div > select"))
发布于 2020-04-08 06:01:53
Iframe出现在页面上,.you需要在与下拉元素交互之前打开iframe。
driver.get("https://www.ahla.com/statefacts")
driver.find_element_by_tag_name('body').send_keys("Keys.ESCAPE")
iframe=driver.find_element_by_tag_name("iframe")
driver.switch_to.frame(iframe)
element=wait.until(EC.element_to_be_clickable((By.XPATH, "//select[@class='select-state__select']/option[text()='Alabama']"))).click()
输出:
https://stackoverflow.com/questions/61089827
复制相似问题