【发布时间】:2021-06-15 13:52:15
【问题描述】:
我遇到了一个问题。 当我需要切换到 iframe 时,iframe 的 id 和名称一直在变化,从 iframe1~iframe9,我总是得到“NoSuchFrameException”,所以我怎样才能在 iframe 的名称中嵌入星号通配符,就像:
driver.switch_to.frame('iframe*')
【问题讨论】:
我遇到了一个问题。 当我需要切换到 iframe 时,iframe 的 id 和名称一直在变化,从 iframe1~iframe9,我总是得到“NoSuchFrameException”,所以我怎样才能在 iframe 的名称中嵌入星号通配符,就像:
driver.switch_to.frame('iframe*')
【问题讨论】:
如果只有一个 iframe,或者它们的顺序始终相同,则可以使用索引:
driver.switch_to.frame(0)
如果比较复杂,不如直接把名字放在switch_to.frame调用中,可以先搜索frame,然后作为变量传递;这将使您可以搜索任何内容,甚至可以遍历所有 iframe 并在 python 代码中检查您想要的那个。
iframe = driver.find_element_by_xxx(...)
driver.switch_to.frame(iframe)
【讨论】: