Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >无法在Java中使用Selenium WebDriver选择按钮

无法在Java中使用Selenium WebDriver选择按钮
EN

Stack Overflow用户
提问于 2013-12-30 15:38:58
回答 2查看 1K关注 0票数 0

尝试使用Selenium WebDriver从网页的可折叠区域中选择按钮。我对WebDriver非常陌生,我对如何得到这个特殊的小怪物有问题。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    <a href="#" class="btn new-fields-button" data-fields="&lt;div class='contributor-form form-inline form-nested'&gt; 
&lt;select id=&quot;video_item_contributors_attributes_39041920_role&quot; name=&quot;video_item[contributors_attributes]
[39041920][role]&quot;&gt;&lt;option value=&quot;Actor&quot;&gt;Actor&lt;/option&gt; &lt;option 
value=&quot;Director&quot;&gt;Director&lt;/option&gt; &lt;option value=&quot;Writer&quot;&gt;Writer&lt;/option&gt; 
&lt;option value=&quot;Producer&quot;&gt;Producer&lt;/option&gt;&lt;/select&gt; &lt;input class=&quot;input-small&quot; 
id=&quot;video_item_contributors_attributes_39041920_name&quot; name=&quot;video_item[contributors_attributes][39041920][name]&quot; 
placeholder=&quot;Name&quot; size=&quot;30&quot; type=&quot;text&quot; /&gt; &lt;a class='btn btn-danger delete-nested' 
data-destroy-id='destroy-contributor-toggle-'&gt; &lt;i class='ss-trash'&gt;&lt;/i&gt; &lt;/a&gt; &lt;/div&gt; " 
data-id="39041920"><i class="ss-plus"></i> Add Contributor</a>

这是一段代码(试图在这里将其分解为可读的部分),它描述了要单击的按钮,并直接从Chrome的“检查元素”视图中复制。有什么想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-12-30 19:24:25

首先,您需要确保a元素不在iframe中。如果是,则必须使用driver.switchTo().frame("frameName")将上下文切换到框架。

然后,找到与a元素一致的唯一元素,以便能够识别它。下面是一些可以使用的xpath定位器示例。

要获得参考,请阅读XPath W3C推荐 -它提供了使用xpath所需的所有信息。

通过锚文本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
By.xpath("//a[text()=' Add Contributor']") 

在xpath中使用class

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
By.xpath("//a[@class='btn new-fields-button']") 

要进行部分匹配,可以使用contains()

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
By.xpath("//a[contains(@class,'new-fields-button')]") 

还可以使用多个选择器,如:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
By.xpath("//a[contains(@class,'new-fields-button') and contains(text(),'Add Contributor')]") 
票数 0
EN

Stack Overflow用户

发布于 2013-12-30 15:54:16

根据所提供的信息,您可以执行如下xpath搜索:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
WebElement button = webDriver.findElement(By.xpath("//a[@data-id='39041920']"));

不知道,如果数据id属性是唯一的还是不唯一的,因为您并没有真正告诉您的页面的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20849418

复制
相关文章
selenium使用之安装webdriver
使用pycharm的可以在settings-> interceptor中进行安装。
山行AI
2019/09/19
4.3K0
selenium使用之安装webdriver
Python selenium webdriver 基本使用
本文就介绍了Selenium的常用内容:了解Selenium Webdriver 是干什么的
EXI-小洲
2022/12/13
1.6K0
Selenium WebDriver脚本Java代码示例
本篇文章将介绍如下内容: WebDriver代码 Selenium定位UI元素 Selenium常用命令 Get命令 --Get Commands 导航(跳转)命令-Navigate commands Close和Quite关闭和退出浏览器窗口 切换内嵌框架Frame 切换到弹出框
软测小生
2019/09/04
5.3K0
Selenium WebDriver脚本Java代码示例
在Selenium Webdriver中使用XPath Contains、Sibling函数定位
前言 在一般情况下,我们通过简单的xpath即可定位到目标元素,但对于一些既没id又没name,而且其他属性都是动态的情况就很难通过简单的方式进行定位了。 在这种情况下,我们需要使用xpath1.0内
苦叶子
2018/04/04
2.2K0
在Selenium Webdriver中使用XPath Contains、Sibling函数定位
使用Selenium WebDriver进行闪存测试
Flash测试是一种测试类型,用于检查基于Flash的视频,游戏,电影等是否按预期工作。换句话说,测试闪存的功能称为“ 闪存测试”。Flash是Mircomedia开发的非常流行的软件(现已被Adobe收购)。它用于开发游戏,应用程序,基于图形的动画,电影,手机游戏,程序等。
用户7466307
2020/06/17
1.9K0
处理Mac 下 Python selenium webdriver 无法上传图片
为什么要pyperclip 我尝试后发现PyUserInput 输入文件地址有个BUG,导致mac无法识别地址,于是在网上查了别人提供的一个比较好的方案。贴代码:
全栈程序员站长
2021/05/27
1.5K0
Jest + Selenium WebDriverJest + Selenium WebDriver
https://medium.com/@mathieux51/jest-selenium-webdriver-e25604969c6
一个会写诗的程序员
2018/12/14
1.5K0
Jest + Selenium WebDriverJest + Selenium WebDriver
解读selenium webdriver
WebDriver可以像用户一样驱动原生浏览器,无论是在本地服务器还是在使用Selenium服务器的远程机器上,都标志着浏览器自动化的一个飞跃。
互联网金融打杂
2022/08/01
6.7K0
解读selenium webdriver
Selenium WebDriver简介
是Selenium工具箱中功能最强大且最受欢迎的工具之一。WebDriver是Selenium RC的扩展版本,具有许多优点,并解决了其许多限制。与Selenium IDE不同,WebDriver将其支持扩展到许多最新的浏览器和平台。与Selenium RC不同,WebDriver也不要求在执行测试脚本之前先启动Selenium服务器。
用户7466307
2020/06/17
1.7K0
Selenium WebDriver使用IE浏览器
IEdriver插件下载地址:http://www.cr173.com/soft/195732.html
周小董
2019/03/25
6.2K0
Selenium WebDriver使用IE浏览器
selenium使用webdriver,打开浏览器
from selenium import webdriver import time driver=webdriver.Chrome() driver.maximize_window() time.sleep(5) driver.get("https://www.baidu.com/")
用户1171305
2019/07/02
1.5K0
selenium使用webdriver,打开浏览器
使用Python和Chrome安装Selenium WebDriver
WebDriver是用于与实时Web浏览器进行交互的可编程界面。它使测试自动化能够打开浏览器,发送点击,键入键,刮擦文本并最终干净地退出浏览器。WebDriver界面是W3C建议书。WebDriver标准的最受欢迎的实现是Selenium WebDriver,它是免费和开放源代码。
用户7466307
2020/07/28
3.7K0
Selenium Webdriver Desired Capabilities
前言 我们每一个的selenium测试都应该在指定的环境下运行,这个环境可以是web浏览器、移动设备、移动模拟器等等。 那怎么来指定我们的selenium测试脚本运行环境呢? 本次分享主要解决这个问题
苦叶子
2018/04/04
1.8K0
Selenium Webdriver Desired Capabilities
Selenium Webdriver 简易教程
Selenium RC和Selenium Webdriver是测试框架,提供多种语言的API。不同的是,Selenium Webdriver以一种更底层、更灵活的方式来操作浏览器,并不仅仅使用javascript。这样它可以绕开浏览器的沙箱限制,实现Selenium RC不支持的框架、弹出窗口、页面导航、下拉菜单、基于AJAX的UI元素等控件的操作。以及,Selenium Webdriver不需要本地服务器。
ApacheCN_飞龙
2019/02/15
5.2K0
Selenium(Webdriver)的安装
安装selenium前需要确保python安装成功,并且已经安装了pip。安装 pip 的好处是可以使用 pip 命令方便地安装 Python 第三方库。在通过 pip 安装 Python 第三方库时,如果只输入包名,则默认安装当前库中最新的版本,如果我们不想安装最新版本的包,则可以在包名后面加版本号。通过以下方法确认pip是否已经安装成功:
Altumn
2019/10/21
1.9K0
Selenium(Webdriver)的安装
【测试】Selenium Webdriver API
更多操作: http://selenium-python.readthedocs.io/api.html#module-selenium.webdriver.remote.webelement
瑞新
2020/07/07
2.5K0
Selenium中WebDriver最新Chrome驱动安装教程
  由于日常测试团队中的仿真环境存在着几套最新版本的测试套件,所以经常可以模拟客户由于浏览器或客户端自动升级至最新版后某些功能失效或报错的业务场景(因为我们本身也有提供外包测试的业务),那么今天就来为大家分享一下有关selenium中浏览器驱动下载与管理。
Austin_zhai
2023/10/25
3.3K0
Selenium中WebDriver最新Chrome驱动安装教程
Selenium Webdriver常用方法
目录[-] 实例化方法 from selenium import webdriver driver = webdriver.Chrome(executable_path='C:\Program Files (x86)\Google\Chrome\Application\chromedriver') 浏览器操作 浏览器最大化 driver.maximize_window() 设置浏览器宽高 driver.set_window_size(480, 800) 控制浏览器前进后退 driver.back()
jhao104
2018/03/20
2.7K0
如何在Selenium WebDriver中查找元素?(一)
有多种方法可以唯一地标识网页中的一个Web元素,例如ID,名称,类名,链接文本,部分链接文本,标记名和XPATH。
用户7466307
2020/06/24
6.1K0
如何在Selenium WebDriver中处理Web表?
在需要以表格格式显示信息的情况下,通常使用Web表或数据表。本质上,显示的数据可以是静态的也可以是动态的。您经常会在电子商务门户网站中看到这样的示例,其中产品规格显示在Web表中。随着它的广泛使用,您经常会遇到需要在Selenium测试自动化脚本中处理它们的场景。
PHP开发工程师
2021/04/20
3.7K0
如何在Selenium WebDriver中处理Web表?

相似问题

Java selenium webdriver按钮无法单击按钮

20

在Selenium Webdriver (Java)上选择单选按钮

53

无法单击按钮- Java Selenium Webdriver

38

无法在selenium webdriver with java中单击弹出按钮

31

无法使用Selenium (Java、Chrome WebDriver)单击按钮

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文