1.鼠标事件
-
ActionChains类
-
from selenium.webdriver.common.action_chains import ActionChains
-
-
语法
-
ActionChains(driver).鼠标操作方法.perform()
-
-
鼠标拖拽
-
drag_and_drop(起始元素,终止元素)
-
-
鼠标悬停
-
move_to_element(元素)
-
2.键盘事件
-
Keys类
-
from selenium.webdriver.common.keys import Keys
-
-
使用
-
send_keys(Keys.键名) # 单个键操作
-
send_keys(Keys.CONTROL,'c') # 组合键使用
-
3.下拉菜单
-
方式1
-
二次定位
-
先定位主元素,通过主元素定位子元素
-
-
-
方式2 Select类
-
from selenium.webdriver.support.select import Select
-
通过选项的value值选择
-
Select(元素).select_by_value(value值)
-
-
通过选项的索引值选择
-
Select(元素).select_by_index(索引值) 索引从0开始
-
-
通过选项的文本值选择
-
Select(元素).select_by_visible_text(文本内容)
-
-
4.滚动条操作
-
操作滚动条
-
js代码块
-
js = "window.scrollTo(0,10000)" # 置底
-
js = "window.scrollTo(0,0)" # 置顶
-
-
执行代码块
-
driver.execute_script(js代码块)
-
-
-
聚焦元素---让滚动条移动到需要操作的元素位置
-
定位聚焦元素---element
-
js = "arguments[0].scrollIntoView();"
-
driver.execute_script(js,element)
-
5.iframe操作
-
1.定位iframe
-
2.进入iframe
-
driver.switch_to.frame(id/name/元素/index)
-
-
3.操作iframe中的元素---普通元素一样
-
4.退出iframe
-
退出当前层
-
driver.switch_to.parent_frame()
-
-
退出最外层
-
driveri.switch_to.default_content()
-
-
6.多窗口切换
-
1.获取当前窗口句柄
-
driver.current_window_handle
-
-
2.操作触发多窗口的元素
-
3.获取所有窗口句柄
-
driver.window_handles
-
-
4.进入新窗口
-
driver.switch_to.window(句柄)
-
7.弹窗处理
1.浏览器自带弹窗
-
1.操作触发弹窗元素
-
2.进入弹窗(捕获弹窗)
-
alert = driver.switch_to.alert
-
-
3.操作弹窗
-
获取弹窗文本
-
alert.text
-
-
点击确认按钮
-
alert.accept()
-
-
2.自定义弹窗(了解)
作业day_3
1.抄1遍敲2遍
2.selenium 登录163邮箱/qq邮箱
3.发送邮件(选做)