Python Selenium webdriver消息:没有此类元素:无法找到元素-iFrame

Python Selenium webdriver消息:没有此类元素:无法找到元素-iFrame,python,python-3.x,selenium,selenium-webdriver,selenium-chromedriver,Python,Python 3.x,Selenium,Selenium Webdriver,Selenium Chromedriver,我有一个问题,当我想点击号码。使用SeleniumWebDriver 这是代码 from selenium import webdriver from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By chromedriver_

我有一个问题,当我想点击号码。使用SeleniumWebDriver

这是代码

from selenium import webdriver
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By

chromedriver_location = 'chromedriver'

driver = webdriver.Chrome(chromedriver_location)
driver.get('site')

username_input = '/html/body/div[2]/div/div/form/div[1]/input'
password_input = '/html/body/div[2]/div/div/form/div[2]/input'
login_submit = '/html/body/div[2]/div/div/form/button'

driver.find_element_by_xpath(username_input).send_keys('username')
driver.find_element_by_xpath(password_input).send_keys('password')
driver.find_element_by_xpath(login_submit).click()

numbers = '/html/body/div[1]/div/div[3]/div/div[1]/div[5]/div'
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, "/html/body/iframe")))
driver.find_element_by_xpath(numbers).click()

数字5的完整xPath是
/html/body/div[1]/div/div[3]/div/div[1]/div[5]/div

错误消息是:

回溯(最近一次呼叫最后一次): 文件“”,第1行,在 驱动程序。通过xpath(数字)查找元素。单击() 文件“C:\Users\m\AppData\Local\Programs\Python\39\lib\site packages\selenium\webdriver\remote\webdriver.py”,第394行,在find\u element\u by\u xpath中 返回self.find_元素(by=by.XPATH,value=XPATH) 文件“C:\Users\m\AppData\Local\Programs\Python\39\lib\site packages\selenium\webdriver\remote\webdriver.py”,第976行,在find\u元素中 返回self.execute(Command.FIND_元素{ 文件“C:\Users\m\AppData\Local\Programs\Python\39\lib\site packages\selenium\webdriver\remote\webdriver.py”,执行中第321行 self.error\u handler.check\u响应(响应) 文件“C:\Users\m\AppData\Local\Programs\Python\39\lib\site packages\selenium\webdriver\remote\errorhandler.py”,第242行,在check\u响应中 引发异常类(消息、屏幕、堆栈跟踪) selenium.common.exceptions.NoSuchElementException:消息:没有这样的元素:无法定位元素:{“方法”:“xpath”,“选择器”:“/html/body/div/div/div[3]/div/div/div[5]/div”} (会话信息:chrome=87.0.4280.88)

也试过了

WebDriverWait(driver,10)。直到(EC.element可点击((By.XPATH,number))。点击()

这个错误是

回溯(最近一次呼叫最后一次): 文件“”,第1行,在 WebDriverWait(driver,10)。直到(EC.element\u to\u be\u clickable((By.XPATH,number))。单击() 文件“C:\Users\m\AppData\Local\Programs\Python\39\lib\site packages\selenium\webdriver\support\wait.py”,第80行,在 引发TimeoutException(消息、屏幕、堆栈跟踪) selenium.common.Exception.TimeoutException:消息:


首先切换到iframe:

iframe=WebDriverWait(driver,  10).until(EC.presence_of_element_located((By.XPATH, "/html/body/iframe")))

driver.switch_to.frame(iframe)

driver.find_element_by_xpath(numbers).click()


#REMAINING CODE TO INTERACT WITH ELEMENTS INISIDE IFRAME

#once done exit from iframe

driver.switch_to.default_content()