seleniumday_3
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代码块)
- 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()
- 获取弹窗文本