一.selenium定位元素的8种方法:

   1.find_element_by_id()

   2.find_element_by_name()

3.find_element_by_css()

4.find_element_by_xpath()

5.find_element_by_tag_name()

   6.find_element_by_class_name()

7.find_element_by_partial_link_text()

   8.find_element_by_link_text()

二.浏览器操作

  1.maximize_window()  窗口最大化

  2.refresh()  刷新当前页面

  3.forward()  前进

  4.back()  后退

三.对元素进行操作

  1.clear()  清除文本框的内容

  2.send_keys()  输入内容

  3.click()   单击

  4.size     返回元素的尺寸

  5.text      返回元素的文本

  6.get_attribute(name)  获取元素的属性

  7.is _displayed()  获取元素是否可见

  8.title  获取当前页面的标题

  9.current_url   获取当前页面的URL

四.多表单切换

  1.switch_to_frame()  默认可以直接填写表单的id或name

  2.switch_to.default_content()  跳回最外层的页面

五.多窗口切换

  1.switch_to_window()  

from selenium import webdriver
import time driver=webdrive.Firefox()
driver.get('http://www.baidu.com') #获得百度搜索窗口句柄
search_windows=driver.current_window_handle driver.find_element_by_link_text('登录').click()
driver.find_element_by_link_text('立即注册').click() #获得当前打开的窗口的所有句柄
all_handles=driver.window_handles() #进入注册窗口
for handle in all_handles:
  if handle!=search_windows:
    driver.switch_to.window(handle)
    ......
#回到搜索窗口
for handle in all_handles:
  if handle==search_windows:
    driver.switch_to.window(handle)
    ......

 六.警告框的处理(javascript所生成的alert,confrim以及prompt)

  1.switch_to_alert().text

  2.switch_to_alert().accept()

  3.switch_to_alert().dismiss()

  4.switch_to_alert().send_keys()

七.操作cookie

  1.get_cookies()

  2.get_cookie(name)  返回字典键为name的cookie对象

  3.add_cookie(cookie_dict) 点击cookie,cookie_dict指字典对象

  4.delete_cookie(name,optionsString)  删除cookie信息

  5.delete_all_cookies  删除所有的cookie信息

八.窗口截图

  driver.get_screenshot_as_file("c:/cale/report/1.jpg")

九.关闭窗口

  driver.close()

十.关闭浏览器

  driver.quite()

  

最新文章

  1. 【转】request和response的页面跳转传参
  2. Mongodb 语法,update,insert,delete,find
  3. Qt 学习之路 :动态视图
  4. 如何更改项目所使用的C#版本
  5. nginx配置无效的问题
  6. C#编程基础->XML系列导航
  7. day09 小练习 斐波那契数列 文件
  8. angularjs的一些问题
  9. 空的OnGUI也会有gc
  10. Java代码审计入门篇
  11. python常用函数和方法 - 备忘
  12. Spring Cloud 入门 之 Feign 篇(三)
  13. The last time the sprint(最后一个冲刺)
  14. Git:如何为项目设置自己的user name/email
  15. 20172325《Java程序设计》第一周学习总结
  16. ubuntu访问win10下的磁盘
  17. 5309 《Java程序设计》第6周学习总结
  18. S/4HANA服务订单Service Order的批量创建
  19. linux 设置 亮度
  20. python的property属性

热门文章

  1. Windows核心编程 第23章 结束处理程序
  2. 在Windows上使用终端模拟程序连接操作Linux以及上传下载文件
  3. 逆向与分析-WebBrowserPassView消息分析
  4. 【vue-01】快速入门
  5. 如何使用java搭建一款高性能的Mqtt集群broker!
  6. 10个 解放双手的 IDEA 插件,这些代码都不用写(第二弹)
  7. @JsonFormat 格式化时间 时出现时间不准确问题
  8. 面向对象JML系列作业总结
  9. 『动善时』JMeter基础 — 14、使用JMeter发送Post请求
  10. CSS filter 有哪些神奇用途