我的代码:
driver.find_element_by_xpath("//div[@class='x-grid3-cell-inner x-grid3-col-1']//a").click() # Click on Device eid
time.sleep(15)
driver.find_element_by_xpath("//table[@id='ping']//button[contains(text(),'Ping')]").click() # click on Ping
获取错误:
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element:
在Chrome和firefox xpath上正确,仍然出现错误?谁能帮忙,我知道这很愚蠢
一个。
答案 0 :(得分:2)
检查元素是否在iFrame
标签下,如果是,则首先需要切换到框架中,然后执行预期的操作。
iframe = driver.find_element_by_name('frame_name')
driver.switch_to.frame(iframe)
如果与计时相关的问题,则在代码中引入隐式和显式等待。
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
element = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, "//div[@class='x-grid3-cell-inner x-grid3-col-1']//a"))
element.click()
希望这会有所帮助