iframe
<Iframe><Iframe>包含内容的页面和整个页面上是一个整体,而且在同一个页面中多次显示同一个内容,而不必重复这段代码
下面以qq邮箱举例,iframe的属性
<iframe id="login_frame" width="100%" height="100%"frameborder="0" name="login_frame
![](https://img.haomeiwen.com/i5978706/18ae8a0769e52b23.png)
当定位到iframe位置时,整个登录框显示灰蓝色,说明iframe区域是整个登录框区域
登录按钮是在iframe上,所以首先需要把定位器切换到iframe上,然后使用switch_to_frame进行切换,这里可以使用id进行定位
#coding=utf-8
from selenium import webdriver
import os
driver=webdriver.Firefox()
driver.get("https://mail.qq.com")
driver.implicitly_wait(30)
driver.switch_to.frame("login_frame")
driver.find_element_by_id("switcher_plogin").click()
driver.find_element_by_id("u").send_keys("qq号码")
driver.find_element_by_id("p").send_keys("密码")
driver.find_element_by_id("login_button").click()
如何判断某一个元素在iframe上,使用firebug 选择某一个元素如图
![](https://img.haomeiwen.com/i5978706/fdc51e34323c1870.png)
图中显示的是iframe#login_frame(iframe#xxx这种格式的,就说明其在iframe上 后边是id
网友评论