# -*- coding:utf-8 -*-
"""
通过 id 或 name 识别处理 fram 框架
""" from selenium import webdriver driver = webdriver.Firefox()
driver.get(r'F:\电子书\selenium\Selenium Testing Tools Cookbook(中文)\demo\frame\frame.html')
driver.switch_to_frame('left')
leftMsg = driver.find_element_by_tag_name('p').text
print leftMsg #回到初始的焦点
driver.switch_to_default_content() #通过 name 定位到右边的框架
driver.switch_to_frame('right') rightMsg = driver.find_element_by_tag_name('p').text print rightMsg
 # -*- coding:utf-8 -*-
"""
通过 index 焦点获取 frame 框架
""" from selenium import webdriver driver = webdriver.Firefox()
driver.get(r'F:\电子书\selenium\Selenium Testing Tools Cookbook(中文)\demo\frame\frame.html')
#通过 index 定位框架
#index 从 0 开始
driver.switch_to_frame(1) middleMsg = driver.find_element_by_tag_name('p').text print middleMsg
 # -*- coding:utf-8 -*-
"""
通过页面内容获取 frame 框架
""" from selenium import webdriver driver = webdriver.Firefox()
driver.get(r'F:\电子书\selenium\Selenium Testing Tools Cookbook(中文)\demo\frame\frame.html') #得到页面中所有的 frame 元素
frames = driver.find_elements_by_tag_name('frame') #通过页面内容得到页面中间的框架
for i in frames:
driver.switch_to_frame(i)
if "middle" in driver.page_source:
break
else:
#没有匹配到的时候回到最初页面
driver.switch_to_default_content() actualText = driver.find_element_by_tag_name('p').text
print actualText
print 'i am middle page' == actualText

Frame 处理的更多相关文章

  1. Android动画效果之Frame Animation(逐帧动画)

    前言: 上一篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画),今天来总结下Android的另外一种动画Frame ...

  2. 3.JAVA之GUI编程Frame窗口

    创建图形化界面思路: 1.创建frame窗体: 2.对窗体进行基本设置: 比如大小.位置.布局 3.定义组件: 4.将组件通过add方法添加到窗体中: 5.让窗体显示,通过setVisible(tur ...

  3. iOS:frame访问、设置简化

    看到一些程序都有这种写法,也不知道原创者是谁了.先在博客保存下. 在.m文件 #import "UIView+MyFrameCategory.h" @implementation ...

  4. IOS 杂笔-12(类别de巧用 有便于Frame的操作)

    在实际开发中很多时候我们都为了控件frame的操作焦头烂额. 例如:我们只想要获取view的width. 我们可以这么操作:view.frame.size.width 有时我们想要改变view的wid ...

  5. 如何给frame标签的src属性以及a标签的href属性自动设值

    <frame src="" id="main" name="main" marginwidth="0" margi ...

  6. frame和bounds

    - frame 是一个以**父视图**为坐标系的位置- bounds 是一个以**自身**为坐标系的位置- 如果改变了bounds 那么会影响子控件的显示位置

  7. 使用Java的Frame类编写的QQ登录界面

    public static void main(String[] args) { Frame f = new Frame(); //关闭窗体 f.addWindowListener(new Windo ...

  8. UILabel 根据文本内容设置frame

    CGRect senderFrame = cell.senderLabel.frame;    CGRect creatAtFrame = cell.creatAtLabel.frame;    CG ...

  9. OpenGL帧缓存对象(FBO:Frame Buffer Object)(转载)

    原文地址http://www.songho.ca/opengl/gl_fbo.html 但有改动. OpenGL Frame BufferObject(FBO) Overview: 在OpenGL渲染 ...

  10. 使用iframe的优缺点,为什么少用iframe以及iframe和frame的区别。

    注:HTML5不再支持使用frame,iframe只有src 属性一.使用iframe的优缺点优点:1.程序调入静态页面比较方便;2.页面和程序分离;缺点:1.iframe有不好之处:样式/脚本需要额 ...

随机推荐

  1. php 工作模式

    PHP运行模式 1.cgi通用网关接口 (少用)2.fast-cgi常驻型的 cgi [ngixn常用]3.cli命令运行 (命令行用得多)4.web模块模式(apache等web服务器的运行模式)[ ...

  2. easyui 初体验

    简介 jQuery EasyUI是一组基于jQuery的UI插件集合体,而jQuery EasyUI的目标就是帮助web开发者更轻松的打造出功能丰富并且美观的UI界面.开发者不需要编写复杂的javas ...

  3. 微调Win8.1这台电脑

    从前有个笑话:一位朋友在办公室受到领导教育:“我说小王同志啊,虽然这电脑是你打了报告组织上买给你用的,可是你也不好这么狂妄嘛...”可怜的他只好把图标的名字改为“大家的电脑”. 想必大家已经知道这个笑 ...

  4. mysql 查看数据库大小

    select table_schema, concat(truncate(sum(data_length)/1024/1024,2),' mb') as data_size,concat(trunca ...

  5. 【@ContextConfiguration】java世界的那些注解

    @ContextConfiguration Spring整合JUnit4测试时,使用注解引入多个配置文件 单个文件 @ContextConfiguration(Locations="../a ...

  6. C# and JSON

    JQuery Parse JSON var obj = $.parseJSON(data); C# creates JSON string: public static class JSONHelpe ...

  7. cursor:hand与cursor:pointer的区别介绍

    cursor:hand 与 cursor:pointer 的效果是一样的,都像光标指向链接一样,光标变成手行. cursor:hand :IE完全支持.但是在firefox是不支持的,没有效果. cu ...

  8. w3c subscribe

    http://www.w3.org/html/ig/zh/ http://blog.csdn.net/spring21st/article/details/6126537 http://www.w3c ...

  9. Javascript编程模式(JavaScript Programming Patterns)Part 1.(初级篇)

    JavaScript 为网站添加状态,这些状态可能是校验或者更复杂的行为像拖拽终止功能或者是异步的请求webserver (aka Ajax). 在过去的那些年里, JavaScript librar ...

  10. SQL中Case的使用方法(上篇)(转)

    http://www.cnblogs.com/fxgachiever/archive/2010/09/09/1822106.html Case具有两种格式.简单Case函数和Case搜索函数. --简 ...