常用操作

click

点击某个元素
driver.find_element_by_id(“su”).click()
 
clear
driver.find_element_by_id(“kw”).clear()
 
send_keys
模拟键盘输入
driver.find_element_by_id(“kw”).send_keys(“hello”)
from selenium.webdriver.common.keys import Keys
driver.find_element_by_id(“kw”).send_keys(Keys.RETURN)
 
获取元素的状态:
是否显示:element.is_displayed()
是否被选中:button_elem.is_selected()
是否enable:element.is_enabled()

提交表单

表单在网页中主要负责数据采集功能。

填写完表单之后,我们需要提交表单。有两个方法可以提交表单。

方法一:找到提交表单的button元素(或其他种类),进行点击操作
driver.find_element_by_id(“submit_button”).click()

方法二:调用submit()方法
每个元素都有一个submit()方法。如果该元素在表单内,WebDriver会自己寻找form的闭包然后在它上面调用submit方法;如果该元素不在表单内,则raise一个NoSuchElementException 。
driver.find_element_by_id(“su”).submit()

拖拽操作

from selenium.webdriver import ActionChains

source_ele=driver.find_element_by_name(“source”)

target_ele=driver.find_element_by_name(“target”)

ActionChains(driver).drag_and_drop(source_ele,target_ele)

切换window

 
driver.switch_to_window(“windowName”)

切换frame

 
driver.switch_to_frame(“frameName”)
driver.switch_to_frame(“frameName.0.childName”)

弹出框

切换到alert,并且返回当前打开的alert对象。

alert=driver.switch_to_alert()
 
alert.accept()
alert.dismiss()
alert.text()
alert.send_keys(“hello”)
 

Cookie

cookie={“name”:”cookie_name”,’value’:’cookie_value’}
driver.add_cookie(cookie)
all_cookies=driver.get_cookies()
for cookie_name,cookie_value in all_cookies.items():
Print “%s->%s”%(cookie_name,cookie_value) driver.delete(“cookieName”)
driver.delete_all_cookies()

键盘事件

常用键盘键

Keys.RETURN
Keys.ENTER
Keys.TAB
 
from selenium.webdriver.common.keys import Keys
driver.find_element_by_id(“kw”).send_keys(Keys.RETURN)
driver.find_element_by_id(“kw”).send_keys(Keys.CONTROL,’a’)
driver.find_element_by_id(“kw”).send_keys(u”百度一下”)

鼠标右击

from selenium.webdriver import ActionChains

ActionChains(driver).context_click(su_elem).perform()

鼠标双击

ActionChains(driver).double_click(su_elem).perform()

selenium webdriver python 元素操作的更多相关文章

  1. selenium webdriver python 元素定位

    总结   定位查找时,返回查找到的第一个match的元素.如果找不到,则 raise NoSuchElementException   单个元素定位: find_element_by_idfind_e ...

  2. Selenium webdriver Java 元素操作

    本来这些东西网上一搜一大堆,但是本着收集的精神,整理一份放着吧!哈!哈!哈! 1. 输入框(text field or textarea) WebElement element = driver.fi ...

  3. selenium webdriver (python) 第三版

    感谢 感谢购买第二版的同学,谢谢你们对本人劳动成果的支持!也正是你们时常问我还出不出第三版了,也是你们的鼓励,让我继续学习整理本文档. 感谢乙醇前辈,第二版的文档是放在他的淘宝网站上卖的,感谢他的帮忙 ...

  4. selenium webdriver (python)

    selenium webdriver (python) 第一版PDF Posted on 2013-08-30 22:59 虫师 阅读(221) 评论(0) 编辑 收藏 前言 如果你是一位有pytho ...

  5. Selenium WebDriver + python 自动化测试框架

    目标 组内任何人都可以进行自动化测试用例的编写 完全分离测试用例和自动化测试代码,就像写手工测试用例一下,编写excel格式的测试用例,包括步骤.检查点,然后执行自动化工程,即可执行功能自动化测试用例 ...

  6. Selenium WebDriver + Python 环境配置

    1.   下载必要工具及安装包 1.1.[Python开发环境] 下载并安装Python 2.7.x版本(当前支持2.x版本,不要下载最新的3.X的版本因为python3并非完全兼容python2) ...

  7. 【转】Selenium WebDriver + Python 环境

    转自:http://www.myext.cn/webkf/a_11878.html 1. 下载必要工具及安装包 1.1 [Python开发环境] 下载并安装Python 2.7.x版本 下载地址:ht ...

  8. selenium webdriver (python) 第二版

    前言 对于大多软件测试人员来讲缺乏编程经验(指项目开发经验,大学的C 语言算很基础的编程知识)一直是难以逾越的鸿沟,并不是说测试比开发人员智商低,是国内的大多测试岗位是功能测试为主,在工作时间中,我们 ...

  9. selenium webdriver (python)2

    selenium webdriver (python) 第二版 前言  对于大多软件测试人员来讲缺乏编程经验(指项目开发经验,大学的C 语言算很基础的编程知识)一直是难以逾越的鸿沟,并不是说测试比开发 ...

随机推荐

  1. HttpClient4.0

    ****************************HttpClient4.0用法***************************** 1.初始化HttpParams,设置组件参数 //Ht ...

  2. 转载:C# 中的委托

    原文地址  http://www.tracefact.net/CSharp-Programming/Delegates-and-Events-in-CSharp.aspx 感谢博主分享! 引言 委托和 ...

  3. Android Marquee

    android:singleLine="true" android:marqueeRepeatLimit="marquee_forever" android:e ...

  4. libthrift0.9.0解析(五)之TNonblockingServer&THsHaServer

    本文是一边看代码一边写的,是真随笔,随看随下笔. 看TNonblockingServer,先看其父类AbstractNonblockingServer.一般来说,父类封装的都是通用的东西,具体的底层实 ...

  5. 关于JPush使用CPU占有率100%的情况

    跑模拟器cpu占有率120%+,开始没注意,真机时候手机发烫的厉害,看了下CPU和线程 如图,发现占有率最高的是com.apple.CFSocket.private和org.hxhg.jpush.th ...

  6. 安卓自写Adapter

    代码: package com.example.ouradapter; import android.app.ListActivity; import android.content.Context; ...

  7. JavaScript--函数-01

    函数的本质: function:创建一个函数对象的意思 什么是函数对象: 专门封装一个函数定义的存储空间 其实,函数是一个引用类型的对象 函数名,其实是一个引用函数对象的变量 函数只有在调用时才执行, ...

  8. 如何完全禁用或卸载Windows 10中的OneDrive - 51CTO.COM

    OneDrive 是微软的个人云存储平台,提供了对个人用户的文件托管.存储和同步等服务,OneDrive 默认被内置在 Windows 10 操作系统当中,而且当用户使用 微软账户 登录时,OneDr ...

  9. Thinkphp 验证码、文件上传

    一.验证码 验证码参数 例题:登录时验证下验证码 LoginController.class.php <?php namespace Home\Controller; use Think\Con ...

  10. 编写可维护的javascript代码---开篇(介绍自动报错的插件)

    文章开篇主要推荐了2款检测编程风格的工具: JSLint和JSHint: jsLint是由Douglas Crockford创建的.这是一个通用的javascript代码质量检测工具,最开始JSLin ...