繁体   English   中英

我无法在python中使用硒单击网页中的按钮

[英]I m not able to click on a button in a web page using selenium in python

下面的代码有什么问题

import os
import time
from selenium import webdriver
driver = webdriver.Firefox()
driver.get("http://x.x.x.x/html/load.jsp")
elm1 = driver.find_element_by_link_text("load")
time.sleep(10)
elm1.click()
time.sleep(30)
driver.close()

页面来源是

<body>   
<div class="formcenterdiv">
    <form class="form" action="../load" method="post">
      <header class="formheader">Loader</header>
      <div align="center"><button class="formbutton">load</button></div>
    </form>   
</div>


</body></html>

我想点击按钮加载。 当我运行上述代码时遇到此错误selenium.common.exceptions.NoSuchElementException:消息:无法找到元素:load

由于文件说find_elements_by_link_text仅适用于a标签:

当您知道锚标记中使用的链接文本时,请使用此选项。 使用此策略,将返回链接文本值与位置匹配的第一个元素。 如果没有元素具有匹配的链接文本属性,则将引发NoSuchElementException。

解决方案是使用不同的选择器,例如find_element_by_class_name

elm1 = driver.find_element_by_class_name('formbutton')

您尝试使用Xpath吗?

作为OP说, find_elements_by_link_text上工作a唯一的标签:下面的代码可能会帮助你

driver.get_element_by_xpath("/html/body/div/form/div/button")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM