元素: id:获取id的元素 name:获取name的元素 class_name:获取class的元素 link_text:获取短文字链接 partial_link_text:获取长文字链接 xpath元素定位: 绝对路径定位:根据一级寻找一级选择
id:获取id的元素
name:获取name的元素
class_name:获取class的元素
link_text:获取短文字链接
partial_link_text:获取长文字链接
xpath元素定位:
绝对路径定位:根据一级寻找一级选择元素
利用元素定位:跟着自身标签查找自己的元素:如://input[@id='kw']
层级与属性结合:父级元素和自身属性相结合 如://form[@id='form']/span[1]/input
逻辑运算符:根据自身标签获取 or 或许 and 全部 这两个值 如://input[@id='su' and @class_name='bg']
CSS元素定位:
id,类选择器:分别用 #id .class
元素从父级开始寻找:form#form>span>input.s_ipt
标签内元素通过数组格式任意寻找元素:("input["input[autocomplete='off']")
网页右击源代码,cody(复制),复制所需要的元素
主要使用的方法:
clear() 清空网页中默认的数据
click 点击网页中任何可以点击的元素
send_keys() 在网页中输入内容
text 获取文本信息
get_attribute() 根据前面元素定位获取里面的属性值
current_url() 获取上一个链接地址
title 获取title属性
is_enabled() 判断值是否正确
is_dispalyed() 判断值是否可用
is_selected() 怕地暖复选框或多选框是否选中
set_window_size() 自定义屏幕大小
manimize.window() 最大屏幕
minimize.window() 最小屏幕
back() 前进浏览器
farward() 后退浏览器
save_screenshot() 截取当前屏幕
get_screenshot_as_file("{},{}".format("","")) 截取当前屏幕
close() 退出原有的网页
quit() 退出所有
move_to_element() 鼠标悬停
perform() 执行所有
context_click 右击鼠标
double_click 双击鼠标
current_window_handle 原窗口打开
window_handles 多窗口打开
封装类:ActionChains
引入新包:from selenium.webdriver.common.action_chains import ActionChains
键盘新导入包:from selenium.webdriver.common.keys import Keys
方法:
send_Keys(Keys.Back_SPACE):删除键
send_Keys(Keys.SPACE):空格键
send_Keys(Keys.ESCAPE):esc键
send_Keys(Keys.ENTER):回车键
send_Keys(Keys.TAB):制表键
send_keys(Keys.CONTROL,'a'):全选
send_keys(keys.CONTROL,'c'):复制
send_keys(keys.CONTROL,'X'):剪贴
send_keys(Keys.CONTROL,'V'):复制
1/window.scrollTo(xpos,ypos)
参数说明:
xpos:必填项,要在窗口文档显示区域左上角显示的文档,是x的横坐标
ypos:必填项,要在窗口文档显示区域左上角显示的文档,是y的的纵坐标
2/document.body.scrollHeight:网页正文全文高度
3/document.body.scrollWidth:网页正全文宽度
4/execute_script(script):执行javascript脚本
参数说明:
script(变量名):适合任何javascript脚本
drag_and_drop(source,target):拖动到某个元素然后松开,属于ActionChains类
参数说明:
source:鼠标拖动的原始元素
target:鼠标拖动到另一个元素的位置
滚动条方法:
drag_and_drop_offset(source,xoffset,yoffset):拖动到某个位置然后松开,用于滑动解锁,属于ActionChains类中的方法
source:鼠标拖动原始位置
xoffset:鼠标把元素怒拖动到另外一个位置的x坐标
yoffset:鼠标把元素拖到到另一个位置的y坐标
size:获取“大小”的方法
loaction():获取“位置”的方法
perform():执行鼠标操作的方法
需求:
进入淘宝注册页面
点击同意按钮
输入手机号
滚动注册页面滑动条
模式窗口:只要你不关闭弹窗,页面中其他得操作一概做不了
非模式窗口:不用关闭窗口,页面中也可以做其他得操作
警告框---alert:是一个模式窗口,该怎么使用代码得方式来操作他/
driver对象是在当前页面得窗口内,但是不在alert中,并且我们没有办法定位到这个alert窗口中得元素
driver.switch_to.alert:暂时将浏览器对象driver交给alert
可以对alert警告框做任何事情了
text:返回alert中得文字信息
accept():节后现有得警告框,点击警告框中得"确定"按钮
dismiss():放弃现有警告框,就是点击警告框中得:“取消按钮”