selenium常用界面交互操作

浏览器操作

浏览器显示范围

窗口最大化:

driver.maximize_window()

设置窗口大小:

dirver.set_window_size(width, height)

设置窗口位置:

dirver.set_window_position(x, y)

浏览器显示页面操作

页面后退操作:

driver.back()

页面前置操作:

driver.forward()

页面刷新:

driver.refresh()

浏览器关闭操作

关闭当前窗口(创建驱动时第一个打开的窗口):

dirver.close()

关闭浏览器:

driver.quit()

获取浏览器信息:

获取标题:

driver.title

获取网页地址:

driver.current_url

页面交互操作

下拉框

问题:

元素定位的方式操作下拉框:

1.操作繁琐

2.影响脚本运行效率

解决:

select下拉框

实现:

导包:

from selenium.webdriver.support.select import Select

创建select对象:

select = Select(element)

选择选项:

select.select_by_index(index)   //下标方式
select.select_by_value(value)  //根据选项value属性值,用的最多
select.select_by_visible_text(text) //根据选项文本

注意:

Select类实现选项选择只适用于HTML原生态select+option的下拉框。

弹出框

自定义弹出框:

如果是右键弹出框可以检查到HTML元素信息的,直接通过元素定位来操作处理。

JS弹出框:

右键弹出框无法检查到HTML元素信息的

弹出框处理办法:

alert = driver.switch_to.alert  //获取弹出框对象
alert.text   //获取弹出框文本
alert.accept()  //接受弹出框
alert.dismiss()  //取消弹出框,没有取消按钮一样生效

滚动条

selenium无法直接控制滚动条,需要通过js语句间接控制滚动条

定义js字符串:

js_str1 = "window.scrollTo(0,3000)" //控制滚动条滑动到页面最底部

执行js字符串:

driver.execute_script(js_str1)

鼠标操作

鼠标操作实现步骤:

1.导包

from selenium.webdriver import ActionChains

2.实例化鼠标对象

action = ActionChains(driver)

3.调用鼠标方法,element表示元素对象

3.1 鼠标悬停

action.move_to_element(element)

3.2 鼠标右击

action.context_click(element)

3.3 鼠标双击

action.double_click(element)

3.4拖拽

action.drag_and_drop(element1,element2)

4.执行鼠标操作

调用鼠标方法并不会去执行鼠标操作,必须调用perform()才会执行。

action.perform()
posted @ 2025-12-08 15:20  蜀道,难  阅读(6)  评论(0)    收藏  举报