Selenium无法定位模态框内输入元素的问题求助
Selenium无法定位模态框内输入元素的问题求助
我现在遇到一个Selenium的棘手问题:点击页面按钮弹出模态框后,没法定位到模态框里的输入框并写入内容,每次都会报错找不到元素。
具体操作流程是:打开目标页面 → 点击“Contactar”按钮 → 弹出带有输入框的模态框,但定位模态框内的输入元素时总是失败。
我用来点击触发模态框按钮的代码如下:
def button_click(self, xpath): time.sleep(2) button = self.driver.find_element( By.XPATH, xpath) button.click() time.sleep(5)
按钮对应的XPath是:/html/body/div[2]/div/button
模态框弹出后,我用下面的函数尝试向输入框写入内容:
def write_input(self, xpath, answer): time.sleep(2) winput = self.driver.find_element( By.XPATH, xpath) winput.send_keys(answer) time.sleep(5)
我尝试使用的输入框XPath是:/html/body/div[4]/div/div/div[2]/div[2]/div/div[2]/form/div[1]/div[1]/div/input
但每次执行都会抛出这个错误:
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"/html/body/div[4]/div/div/div[2]/div[2]/div/div[2]/form/div[1]/div[1]/div/input"}
有没有大佬能指点一下,到底该怎么正确定位到模态框里的元素呀?
备注:内容来源于stack exchange,提问作者Rai
相关产品推荐
相关产品推荐

