从0开始python学习-25.selenium 下拉框、滚动、警告框、设置cookie信息

复制代码
1. 下拉框操作:需要对选择框进行定位操作必须创建一个选择框对象进行使用,使用步骤:
    . 首先需要通过Select类创建select对象
    . 通过select对象去选中下拉框元素的具体内容
    . 通过索引(下标)选择
    . 通过文本内容选择
    . 通过value属性选择
2. 滚动操作: 通过JavaScript脚本去执行滚动操作
    . 首先定义一个滚动的js脚本
    . 然后执行脚本
3. 警告框操作
4. 设置cookie信息
python 复制代码
from time import sleep
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.select import Select

driver = webdriver.Chrome()

# 下拉、告警
url1 = "file:///D:/study/%E8%AF%BE%E5%A0%82%E8%B5%84%E6%96%99/14%E6%B3%A8%E5%86%8CA.html"
driver.get(url1)
# 滚动
# url2 = 'https://tieba.baidu.com/index.html'
# driver.get(url2)

driver.maximize_window ()

# 下拉框
# 选中需要下拉的元素
select = Select(driver.find_element(By.XPATH,'//*[@id="selectA"]'))
select.select_by_index(3) # 通过下标进行选择
sleep(2)
select.select_by_visible_text('A上海') # 通过文本内容进行选择
sleep(2)
select.select_by_value('gz') # 通过value属性进行选择

# 滚动
sleep(2)
# 先定义一个滚动的js脚本
js_str = "window.scrollTo(0,100000)"
# 然后调用js执行脚本方法:execute_script()
driver.execute_script(js_str)


# 告警框
# 获取警告框
driver.find_element(By.XPATH,'//*[@id="alerta"]').click()
# 切换到警告框
alert1 = driver.switch_to.alert
# 获取警告框的提示信息
print(alert1.text)
sleep(2)
# 通过确定方式关闭警告框
alert1.dismiss()
# 通过取消的方式关闭警告框
alert1.accept()
# 针对特殊特殊场景输入警告框可以直接通过警告框对象send_keys("密码")
alert1.send_keys("密码")

# 设置cookie信息
# 给页面添加cookie信息
driver.add_cookie(
{"name": "cookie", "value": "5uq8r6vsc1scn86jdvo352c333"}
)
sleep(2)
# 一定要进行页面刷新,因为要清除缓存
driver.refresh()

sleep(5)
# 关闭整个浏览器:quit()
driver.quit()
相关推荐
寻星探路11 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
lly20240613 小时前
Bootstrap 警告框
开发语言
2601_9491465313 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
曹牧13 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
KYGALYX13 小时前
服务异步通信
开发语言·后端·微服务·ruby
zmzb010313 小时前
C++课后习题训练记录Day98
开发语言·c++
ValhallaCoder14 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
执笔论英雄14 小时前
【大模型学习cuda】入们第一个例子-向量和
学习
wdfk_prog14 小时前
[Linux]学习笔记系列 -- [drivers][input]input
linux·笔记·学习
猫头虎14 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven