https://www.mykplan.com/participantsecure_net/TermsAndConditions.aspx 我正在通过id / xpath / name查找它们并且它们都因接受按钮而失败。这是我最近的努力
driver.find_element_by_xpath('//*[@id="Accept"]').click()
直接从Chrome网络工具
复制答案 0 :(得分: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”。