【发布时间】:2015-02-24 06:15:44
【问题描述】:
我在选择 iframe 和访问其中的不同元素时遇到问题。 iframe 名称是动态生成的(例如 frame11424758092173 或 frame0005809321 或 frame32138092173)。问题是无论我做什么,Selenium 都找不到 iframe....
切换到最近的帧不起作用:
iframe = driver.find_elements_by_tag_name('iframe')[0]
driver.switch_to_frame(iframe)
等待帧得到超时异常:
try:
iframe = WebDriverWait(driver, 5).until(EC.frame_to_be_available_and_switch_to_it(By.TAG_NAME('iframe')))
except:
logger.error(traceback.format_exc())
以下代码行也超时:
try:
iframe = WebDriverWait(driver, 5).until(EC.presence_of_element_located((By.TAG_NAME, u"iframe")))
driver.switch_to_frame(iframe)
except:
logger.error(traceback.format_exc())
我也尝试过遍历帧,但找不到。返回列表为空
iframes = driver.find_elements_by_tag_name('iframe')
#iframes is empty
真的需要帮助...
【问题讨论】: