selenium webdriver python 元素操作

时间:2022-09-17 23:52:39

常用操作

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. [转]html超链接打开的窗口大小

    <a href="#" onclick="javascript:window.open('http://www.baidu.com','','height=20,w ...

  2. LVM &&num;39&semi;Can’t open &sol;dev&sol;sdb1 exclusively&period; Mounted filesystem&quest;&&num;39&semi; Problem

    服务器做mysql时候,添加的新磁盘做lvm时候,创建物理卷报错 saltstack_s:/proc/scsi # cat /proc/partitions major minor #blocks n ...

  3. Android系统中默认值的意义列表

    转自:http://blog.csdn.net/yabg_zhi_xiang/article/details/51727844 在SettingsProvider中设置系统中默认值,我们可以在fram ...

  4. &lbrack;php&rsqb;如何更改wamp默认的mysq空密码?

    最近刚开始学php,爬坑中.上午看了会儿书,下了个源码,把文件部署到www下之后,也导入了sql文件,但是进入之后显示 = =  一开始不知道是什么.后来百度之后发现是mysql的问题,应该是源码中p ...

  5. RSA算法解析

    RSA算法原理(一) 如果你问我,哪一种算法最重要? 我可能会回答"公钥加密算法". 因为它是计算机通信安全的基石,保证了加密数据不会被破解.你可以想象一下,信用卡交易被破解的后果 ...

  6. c语言学习之基础知识点介绍(五):关系运算式和逻辑运算式

    本节主要说关系运算式和逻辑运算式. 一.关系运算式 1.等于(==):判断左边的表达式是否等于右边的表达式 2.大于(>):判断左边的表达式是否大于右边的表达式 3.大于等于(>=):判断 ...

  7. python面试宝典2018最新版

    需要的联系,QQ:1844912514

  8. visualsvn的迁移及svn的一些问题

    从A服务器将visualsvn的内容迁移到B服务器的visualsvn. 1 在B服务器上安装visualsvn 到visualsvn官网https://www.visualsvn.com/下载vis ...

  9. jquery AJAX数据传输路径写法~

    $.post('{:url("index/index/logininfo")}',{'username':name,'password':pwd},function(data){ ...

  10. codeforces 1140D&lpar;区间dp&sol;思维题&rpar;

    D. Minimum Triangulation time limit per test 2 seconds memory limit per test 256 megabytes input sta ...