Python 3.x 无法获取Selenium来定位元素
我正在尝试使用Selenium自动单击next_frame按钮,但我不知道为什么元素不能存储到next_frame变量中。如何获取next_frame变量以定位元素Python 3.x 无法获取Selenium来定位元素,python-3.x,selenium,selenium-webdriver,Python 3.x,Selenium,Selenium Webdriver,我正在尝试使用Selenium自动单击next_frame按钮,但我不知道为什么元素不能存储到next_frame变量中。如何获取next_frame变量以定位元素 from webdriver_manager.microsoft import EdgeChromiumDriverManager from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait from selenium.
from webdriver_manager.microsoft import EdgeChromiumDriverManager
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as conditions
from selenium.webdriver.common.by import By
driver = webdriver.Edge(EdgeChromiumDriverManager().install())
driver.implicitly_wait(15)
activity_name = WebDriverWait(driver, 10).until(conditions.visibility_of_element_located((By.ID, "activity-title")))
if activity_name.text == 'Instruction' or activity_name.text == 'Warm-Up' or activity_name.text == 'Summary':
activity_status = driver.find_element_by_id('activity-status')
while activity_status.text != "Complete":
next_frame = driver.find_element_by_xpath('//*[@id="bottom-area"]/div[3]/ol/li[5]/a')
next_frame.click()
activity_status = driver.find_element_by_id('activity-status')
driver.find_element_by_class_name('nav-icon').click()
else:
pass
这是它给我的信息
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id="bottom-area"]/div[3]/ol/li[5]/a"}
这是所有相关代码吗?我甚至不知道在哪里打开URL。如果xpath是正确的,最有可能的原因是,如果您获取的是NoTouchElement,它位于iframe或阴影根中。我将driver.get()放在一个函数中,但为了更简洁,我省略了它。哦,我明白了。它在一个iframe中。