当前位置: 首页 > 面试题库 >

带有selenium的Python:无法找到真正存在的元素

於宏大
2023-03-14
问题内容

我一直在尝试填充输入:

<input id="PASSFIELD1" class="logField" type="password" onkeyup="next(this, event);" maxlength="1" autocomplete="off" name="PASSFIELD1"></input>

为此,我必须找到此元素。

我尝试以下事情:

  1. pass1=driver.find_element_by_name("PASSFIELD1")

  2. pass1=driver.find_element_by_id("PASSFIELD1")

  3. pass1= driver.find_element_by_xpath("/html/body/div[4]/div/div/div[2]/div/form/div[3]/table/tbody/tr[3]/td[2]/div/input[1]") (萤火虫的路径)

  4. 甚至要等100秒

self.wait.until(EC.visibility_of_element_located((By.XPATH,"/html/body/div[4]/div/div/div[2]/div/form/div[3]/table/tbody/tr[3]/td[2]/div/input[1]"))) self.assertTrue(self.driver.find_element_by_xpath("/html/body/div[4]/div/div/div[2]/div/form/div[3]/table/tbody/tr[3]/td[2]/div/input[1]"))

我总是得到:

selenium.common.exceptions.NoSuchElementException:消息:’无法找到元素:(…)

你知道我在做什么错吗?


问题答案:

问题是您的input标签位于内iframe,您需要先切换到它:

frame = driver.find_element_by_xpath('//frame[@name="main"]')
driver.switch_to.frame(frame)
pass1 = driver.find_element_by_id("PASSFIELD1")


 类似资料:
  • 问题内容: 我有一个工作脚本,可以使用selenium登录到站点,如下所示: script.py 通过以下方式在安装了Firefox的 亚马逊Ubuntu盒子 上运行该脚本: 我得到的错误是: selenium.common.exceptions.NoSuchElementException:消息:u’无法找到元素:{“ method”:“ id”,“ selector”:“ content”}’

  • 我试图使用Selenium和Python自动化一些测试。我使用Selenium IDE创建了一个套件,它工作得很好。 我现在试图在Python脚本中重新创建这个套件,但遇到了一个问题。 使用XPATH代替ID 使用隐式等待 使用从IDE导出到Python生成的函数 使用WebDriverWait 以下是IDE中的html定义: 使用隐式等待的Python脚本。所有工作都很好,直到最后一行中的冒犯元

  • 这是一个我没想到会遇到的问题。我正在Ubuntu 11上使用Eclipse中的JUnit 4编写一个硒网络驱动程序测试。我一直在使用Selenium IDE,并结合Firebug和firepath,以确保我在JUnit测试中指定的x路径是正确的。我遇到的问题是selenium IDE命令, 每次都通过。然而,当我使用以下的webDrive-它总是失败 我已经使用Selenium IDE和Selen

  • 问题内容: 我正在尝试抓取以下网站:https : //www.bancosantander.es/es/particulares/prestamos/prestamo- coche/simulador 我正在尝试做的是: 通过移动滑块来模拟数量和持续时间。我正在尝试使用网络驱动程序找到它们。 但是我不能,事实上我已经开始抓取了。 出现的错误如下: 我的代码: 问题答案: 您可以尝试以下方法输入值

  • 我尝试使用Python selenium(新的)做一些自动化。不幸的是,检查特定网页的元素不仅仅是困难的。没有id可以使用,我尝试xpath。我想选择一个下拉列表,我检查这个元素,然后复制xpath,它是//*[@id="frmMain:purchase_criteria_tab"]/div[13]/div[1]/div/按钮 我的代码是: 我不明白这个元素有什么想法吗?提前谢谢你。

  • 问题内容: 我使用selenium webdriver编写python脚本以从网站获取一些数据,然后我试图单击此网页中的下一步按钮。定义按钮的位置: 在Python中使用以下代码 当使用Firefox或chrome Webdriver时,此方法效果很好,但是使用Phantomjs时,出现以下错误。 很多Google搜索都会出现此错误,但是当使用phantomjs时,havnt确实找到了一种解决方法