selenium 元素交互

概述

selenium不仅可以操纵浏览器,还可以操纵网页中的元素。selenium对于网页中的元素的操作主要包括点击、输入内容、清除内容、表单提交、下拉框选择五个部分。

点击
element.click()

selenium使用click函数实现元素点击操作,click函数将模拟鼠标在元素中央进行点击,如果元素中央由于某些原因而点击不了,比如元素被遮挡,则返回一个元素中断错误。点击元素操作支持HTML中的任何元素。

from selenium import webdriver
from selenium.webdriver.common.by import By
# 打开Chrome浏览器
driver = webdriver.Chrome()
# 导航至百度首页
driver.get("www.baidu.com")
# 获取首页搜索按钮
driver.find_element(By.ID, "su")
# 点击元素
element.click()
# 关闭浏览器
dirver.quit()
输入内容
element.send_keys()

selenium实现输入元素内容操作的函数是send_keys函数,注意,selenium不仅可以输入文本,而且可以在输入文本的同时也输入按键名称,相当于在键盘中按下对应的键。输入内容操作仅支持内容可编辑元素,比如输入框<input type="text>。

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
# 打开Chrome浏览器
driver = webdriver.Chrome()
# 导航至百度首页
driver.get("www.baidu.com")
# 获取输入框
element = driver.find_element(By.ID, "kw")
# 向输入框内输入webdriver文本并按下Enter键
element.send_keys("webdriver" + Keys.ENTER)
# 关闭浏览器
driver.close()
清除内容
element.clear()

既然有输入内容,那么肯定就会有清除内容这一操作。selenium删除元素内容,是通过clear函数实现的。与输入内容操作一致,清除内容操作也仅支持内容可编辑元素。

from selenium import webdriver
from selenium.webdriver.common.by import By
# 打开Chrome浏览器
driver = webdriver.Chrome()
# 导航至百度首页
driver.get("www.baidu.com")
# 获取输入框
element = driver.find_element(By.ID, "kw")
# 向输入框内输入webdriver文本
element.send_keys("webdriver")
# 清空输入框文本
element.clear()
# 关闭浏览器
driver.close()
表单提交

在Selenium 4中,不再通过单独的端点以及脚本执行的方法来实现。因此,建议不要使用此方法,而是单击相应的表单提交按钮。

下拉框选择
select = Select(element)

对于下拉框的操作,当获取到element对象后,基于element对象来创建一个select对象。然后,调用select对象的方法来实现对下拉框的操作。该操作仅支持HTML中的下拉框元素,也就是<select>元素。

1、选择

# 根据索引选择下拉框的某一项
select.select_by_index(index)
# 根据option的value属性选择下拉框的某一项
select.select_by_value(value)
# 根据下拉框选项的文本来选择下拉框的某一项
select.select_by_visible_text(text)

2、取消选择

# 根据索引取消选择
select.deselect_by_index(index)
# 根据value属性取消选择
select.deselect_by_value(value)
# 根据文本取消选择
select.deselect_by_visible_text(text)
# 取消选择所有选中的选项
select.deselect_all()

3、获取所有选中的选项

select.all_selected_options

4、获取所有选中的选项中的第一项

select.first_selected_option

5、获取下拉框的所有项(option元素)

select.options
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不负韶华ღ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值