python selenium2 常用方法

完整路径

C:\Python27\Lib\site-packages\selenium\webdriver\remote\webdriver.py 注:笔者python安装在C:\Python27

webdriver.py初步印象

webdriver.py

常用方法分类

一、全局操作类

start_session 使用指定的desired capabilities创建一个会话(session) start_client 新建一个webdriver会话session前调用,可以自定义初始化的动作 stop_client 停止webdriver会话session后调用,可以自定义一些清理动作 create_web_element 创建一个html元素 get 在当前浏览器会话页打开指定的的url网页 close 关闭当前浏览器窗口 quit 关闭webdirver会话,并把所有与该会话关联的浏览器窗口一起关闭 forward/back 浏览器历史浏览上一次/下一次操作 refresh 刷新浏览器 set_script_timeout 设置脚本执行超时时间 set_page_load_timeout 设置页面加载超时时间 get_screenshot_as_file 截图并保存为文件 get_screenshot_as_png 截图并保存为png格式文件 get_screenshot_as_base64 截图成base64串 get_cookies/delete_all_cookies 获取/删除所有cookie get_cookie/delete_cookie 获取/删除指定的cookie

二、元素定位类

find_element_by_id / find_elements_by_id 通过id查找一个或多个元素 find_element_by_xpath / find_elements_by_xpath 通过xpath查找一个或多个元素 find_element_by_link_text / find_elements_by_link_text 通过链接文本查找一个或多个元素(全匹配模式) find_element_by_partial_link_text / find_elements_by_partial_link_text 通过部分链接文本查找一个或多个元素(部分匹配模式) find_element_by_name / find_elements_by_name 通过元素名查找一个或多个元素 find_element_by_tag_name / find_elements_by_tag_name 通过html标记名查找一个或多个元素 find_element_by_class_name / find_elements_by_class_name 通过class name查找一个或多个元素 find_element_by_css_selector / find_elements_by_css_selector 通过css选择器查找一个或多个元素

三、js执行类

execute_script 同步模式执行js(等待js的执行完成,才进入下一步) execute_async_script 异步模式执行js(不需要等待js的执行结果,直接进行下一步)

四、窗口、元素操作类

current_window_handle 获取当前窗口的handle handlewindow_handles 获取当前webdriver session所有窗口的 maximize_window 最大化窗口 set_window_size 设置窗口大小 get_window_size 获取窗口大小 set_window_position 设置窗口位置 get_window_position 获取窗口位置 switch_to_window 切换至指定窗口 switch_to_default_content 切换至默认的frame switch_to_frame 切换至指定的frame switch_to_alert 切换至标准的alert窗口 switch_to_active_element 切换至当前激活的元素

五、基本信息读取类

desired_capabilities 获取当前会话的desired_capabilities信息 current_url 获取当前页面的url page_source 获取当前页面的源码 title 获取当前页面的标题

注: 这里不会把所有的方法都列举出来,只会将常用的列举,有兴趣的朋友可以深入看看代码,更有利于掌握webdriver

原文发布于微信公众号 - 开源优测(DeepTest)

原文发表时间:2017-03-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏张善友的专栏

Remoting: Server encountered an internal error

发生这个错误的原因是Remoting的一个配置项: <customErrors> 元素   指示此应用程序域中的服务器通道是否将经筛选的或完整的异常信息返回给本...

20070
来自专栏腾讯IVWEB团队的专栏

H5 的复制操作

HTML5 现在能完美提供给我们的应该就是 copy 事件的使用,对于市面上的 clipboard.js 差不多也是运用上述的知识点。根据上面的描述,可以了...

2.7K10
来自专栏魏艾斯博客www.vpsss.net

WDCP 面板安装微擎的过程记录

现在最流行的微信管理系统非微擎莫属了,太多人使用微擎来管理自己的微信公众号和微信小程序。同时很多人自行搭建微擎程序时候遇到了难题,为了解决这个难题魏艾斯博客前面...

34200
来自专栏天天

微信小程序中自定义组件的使用

在开发过程中,加入有这样一种场景,就是在开发的过程中,我们一直要使用一些相同或者类似的结构,我们就可以自定义模块,方便使用,以及后期的维护,了解vue的同学就知...

15940
来自专栏Python疯子

Airtest连接Android和iOS进行脚本测试和编写脚本

Airtest一般用于app测试,因为可以通过图片进行识别点击,也可以通过点坐标进行识别点击,所以也可以制作游戏点击脚本和应用的点击脚本。 Airtest可以...

88230
来自专栏游戏杂谈

禁用iOS的UIView长按默认操作

很多时候需要禁用移动设备的默认行为,比如长按一个a链接的按钮(href写的是javascript:;)会提示是否打开/取消。而-webkit-touch-cal...

14820
来自专栏DeveWork

WordPress 主题开发之激活主题后显示自定义提示信息

如果你要开发一款WordPress 主题,那么你肯定希望用户在激活主题后能够看到你自定义的提示信息,一般是感谢使用主题之类的话。WordPress 本身在激活主...

21850
来自专栏JetpropelledSnake

Django学习笔记之Django的url反向解析

8010
来自专栏无原型不设计

【Mockplus教程】复制/克隆

复制是将页面复制到内存中,克隆是直接创建一个和原页面内容一样的新页面。 1. 复制 选中需要复制的页面,鼠标右键单击,弹出的菜单中选择“复制”, 然后在...

31830
来自专栏从零开始学自动化测试

Selenium2+python自动化69-PhantomJS使用

前言 PhantomJS是一个没有界面的浏览器,本质上是它其实也就是一个浏览器,只是不在界面上展示。 PhantomJS非常适合爬虫方面,很多玩爬虫的都喜欢用这...

30140

扫码关注云+社区

领取腾讯云代金券