首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么selenium webdriver找不到我的元素

为什么selenium webdriver找不到我的元素
EN

Stack Overflow用户
提问于 2013-05-22 01:18:58
回答 1查看 1.1K关注 0票数 1

我正在做的是按id/xpath/ https://www.mykplan.com/participantsecure_net/TermsAndConditions.aspx查找,但对于accept按钮,它们都失败了。这是我的最新成果

代码语言:javascript
复制
driver.find_element_by_xpath('//*[@id="Accept"]').click()

直接从chrome web工具复制

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-22 03:41:06

该按钮位于框架内。给定的xpath只有在框架内才是正确的。我在chrome控制台中测试了xpath,得到的结果如下:

在主页(https://www.mykplan.com/participantsecure_net/TermsAndConditions.aspx)无法定位的情况下:

代码语言:javascript
复制
$x('//*[@id="Accept"]');
[]

对于仅限框架内容(https://www.mykplan.com/participantsecure_net/TermsAndConditionsBottom.aspx)的情况,可以找到xpath:

代码语言:javascript
复制
$x('//*[@id="Accept"]');
[<input type=​"submit" name=​"Accept" value=​"I agree" id=​"Accept">​]

在selenium中,我想在查找xpath之前需要切换到框架。我认为web驱动程序功能

代码语言:javascript
复制
driver.switch_to_frame("frameName") 

应该会有帮助。在您的示例中,带有按钮的框架称为"bottomFrame“。

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

https://stackoverflow.com/questions/16675856

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档