1

https://www.mykplan.com/participantsecure_net/TermsAndConditions.aspx 我正在通过 id/xpath/name 进行查找,但它们都无法获得接受按钮。这是我最近的努力

driver.find_element_by_xpath('//*[@id="Accept"]').click()

直接从 chrome 网络工具复制

4

1 回答 1

2

该按钮位于框架内。给定 xpath 仅在框架内是正确的。我在 chrome 控制台中测试了 xpaths,这就是我得到的:

如果是主页 ( https://www.mykplan.com/participantsecure_net/TermsAndConditions.aspx ),则无法找到 xpath:

$x('//*[@id="Accept"]');
[]

如果只有框架内容(https://www.mykplan.com/participantsecure_net/TermsAndConditionsBottom.aspx),可以找到 xpath:

$x('//*[@id="Accept"]');
[<input type=​"submit" name=​"Accept" value=​"I agree" id=​"Accept">​]

在 selenium 中,我猜你需要在寻找 xpath 之前切换到一个框架。我认为网络驱动程序功能

driver.switch_to_frame("frameName") 

应该有帮助。在您的情况下,带有按钮的框架称为“bottomFrame”。

于 2013-05-21T19:41:06.127 回答