selenium webdriver 学习笔记(一)
selenium webdriver
第一个脚本:
#coding = utf-8
from selenium import webdriver
import time
url = "http://www.baidu.com"
browser = webdriver.chrome()
browser.get(url)
#查找元素
browser.find_element_by_id("kw").send_keys("Python")
browser.find_element_by_id("su").click()
time.sleep(5)
browser.quit()
一、元素的定位
我们通过前端工具,找到web控件的相应属性,然后通过下面的方法去抓取元素。
id 如:browser.find_element_by_id("kw").send_keys("Python")
name 如:browser.find_element_by_name("wd").send_keys("Python")
link text 如:browser.find_element_by_link text("贴 吧")
tag name
xpath
css selector
class name
二、浏览器的操作
1.获取浏览器窗口标题
driver = webdriver.chrome()
driver.get('http://www.baidu.com')
print driver.title
2.浏览器最大化
driver.maximize_window()
3.设置浏览器宽、高
driver.set_window_size(width,hight)
三、操作测试对象
一般来说,webdriver中比较常用的操作对象的方法有下面几个:
1.click 点击对象
2.send_keys 在对象上模拟按键输入
3.clear 清除对象的内容,如果可以的话
4.submit 提前对象的内容
5.text 用于获取元素的文本信息。
四、键盘事件
使用键盘进入组合键操作,需要导入以下:
from selenium.webdriver.common.keys import Keys
通过send_keys()调用按键:
send_keys(Keys.TAB)
send_keys(Keys.ENTER)
send_keys(Keys.CONTROL,'x') #相当于ctrl + A 全选内容
send_keys(Keys.CONTROL,'a') #相当于ctrl +x 剪切内容
五、鼠标事件
ActionChains类,导入模块
from selenium.webdriver.common.action_chains import ActionChains
常用方法:
context_click() #鼠标右击
double_click() #鼠标双击
drag_and_drop() #鼠标拖动
selenium webdriver 学习笔记(一)的更多相关文章
- Selenium WebDriver 学习笔记
1. 打开VS2012 2. 新建工程(单元测试工程或控制台程序都可以, 看需求) 3. 工具->NuGet程序包管理器->程序包管理器控制台 4. 输入"Install-Pac ...
- selenium webdriver 学习笔记(三)
selenium webdriver 一.上传文件操作 上传文件夹一般要打开一个本地窗口,从窗口选择本地文件添加.所以一般会卡在如何操作本地窗口添加上传文件. 其实,在selenium webdriv ...
- selenium webdriver 学习笔记(二)
selenium webdriver 一.定位一组元素: webdriver可以很方便的使用findElement 方法来定位某个物定的对象.不过有时候我们却要定位一组对象,这时候就需要使用findE ...
- Python3+Selenium3+webdriver学习笔记14(等待判断 鼠标事件 )
!/usr/bin/env python -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记14(等待判断 鼠标事件 )'''from selenium im ...
- Python3+Selenium3+webdriver学习笔记13(js操作应用:弹出框无效如何处理)
#!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记13(js操作应用:弹出框无效如何处理)'''from sel ...
- Python3+Selenium3+webdriver学习笔记12(js操作应用:滚动条 日历 内嵌div)
#!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记12(js操作应用:滚动条 日历 内嵌div)'''from ...
- Python3+Selenium3+webdriver学习笔记11(cookie处理)
#!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记11(cookie处理)'''from selenium im ...
- Python3+Selenium3+webdriver学习笔记10(元素属性、页面源码)
#!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记10(元素属性.页面源码)'''from selenium i ...
- Python3+Selenium3+webdriver学习笔记9(发送富文本信息及上传文件处理)
#!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记9(发送富文本信息及上传文件处理)'''from seleni ...
随机推荐
- HTML2列表表单框架
HTML——Hyper Text Markup Language <html>,<head>,<body> 一.基本标签: (一)格式标签:——模型:word工具栏 ...
- Android.Hack.02_Animations
#01# TextView 和 ImageView TextView和Imageview切换卡顿,为了实现更好的切换,可以用动画来实现,系统自带的TextViewSwitcher 和ImageView ...
- JQUERY选择和操作DOM元素(利用正则表达式的方法匹配字符串中的一部分)
JQUERY选择和操作DOM元素(利用正则表达式的方法匹配字符串中的一部分) 1.匹配属性的开头 $("[attributeName^='value']"); 2.匹配属性的结尾 ...
- php 数组的几个小算法
1. 判断a数组是否为b数组的子集 <?php $a = array('apple','orange'); $b = array('apple','banana','ornage'); $arr ...
- text-overflow: ellipsis;省略号颜色设置
参考stackoverfolow 想要给元素添加text-overflow: ellipsis;样式,必须保证改其父元素是块级元素,如果其是行级元素,可以通过设置display:block;或者dis ...
- python 中去除BOM头
在window的环境下,保存的文本文档会加上三个字符0xEF 0xBB 0xBF的头部,这三个字符可能会影响对文本的读取,形成乱码,在这里记录下如何避免. 首先发现直接保存为ASCII的文本文件是不包 ...
- centos6.5图形界面NetworkManager 配置ip文件位置
请教一个关于网络配置的问题,如图:该网络连接图形界面中 有2个配置,其中System eth0 有对应的配置文件/etc/sysconfig/network-scripts/ifcfg-eth0,但是 ...
- VS2012编译错误信息,错误列表却没显示
今天在写代码的时候,发现VS有编译错误,在错误列表里面却没有显示错误信息,百思不得其解. 后来终于发现,错误列表弄了个筛选,所以就看不到错误信息了,晕死.有遇到该问题的,可以参考下.
- 【Itext】7步制作Itext5页眉页脚pdf实现第几页共几页
itext5页眉页脚工具类,实现page x of y 完美兼容各种格式大小文档A4/B5/B3,兼容各种文档格式自动计算页脚XY轴坐标 鉴于没人做的这么细致,自己就写了一个itext5页眉页脚工具类 ...
- Ubuntu-升级linux软件源,安装vim/五笔
重装linux后 软件都没了. 这些是要做的: (1):升级软件源 sudo gedit /etc/apt/source.list 打开后ctrl c 下面的源 ##网易的源(163源,无论是不是教 ...