web自动化之下拉列表处理

一、select下拉列表处理

1、定位到select元素
2、选择select的属性值
(1)、通过options索引选择下拉内容
sel.select_by_index(1)
(2)、通过options的value属性值选择下拉内容
sel.select_by_value(“fiat”)
(3)、通过options文本内容选择下来内容
sel.select_by_visible_text(“Audi”)
3、会直接选择,没有页面的动画效果

二、select下拉列表代码实现处理

在这里插入图片描述

from selenium.webdriver.support.select import Select
from selenium import webdriver
import logging
import time


logging.basicConfig(level=logging.DEBUG)
# 启动浏览器驱动服务器
driver = webdriver.Chrome()
driver.get("https://www.w3school.com.cn/tiy/t.asp?f=eg_html_elements_select")
driver.maximize_window()
time.sleep(2)

driver.switch_to.frame("iframeResult")
# 定位select元素
ele_select = driver.find_element_by_xpath("//select")

sel = Select(ele_select)
# 通过options索引选择下拉内容
sel.select_by_index(1)
time.sleep(3)

# 通过options的value属性值选择下拉内容
sel.select_by_value("fiat")
time.sleep(3)

# 通过options文本内容选择下来内容
sel.select_by_visible_text("Audi")

三、div下拉列表代码实现

点百度-设置-高级搜索-所有网页和文件下拉框
在这里插入图片描述

from selenium import webdriver
import logging
import time

logging.basicConfig(level=logging.DEBUG)
# 启动浏览器驱动服务器
driver = webdriver.Chrome()

driver.get("https://www.baidu.com")
driver.maximize_window()
time.sleep(2)

# 点击设置
ele = driver.find_element_by_xpath('//span[@id="s-usersetting-top"]').click()
time.sleep(2)

# 点击高级搜索
driver.find_element_by_xpath('//div[@id="s-user-setting-menu"]//a[text()="高级搜索"]').click()
time.sleep(2)

# 触发下拉列表
driver.find_element_by_xpath('//span[text()="所有网页和文件"]').click()
time.sleep(2)

# 获取所有的下来列表
ele2 = driver.find_elements_by_xpath('//span[@id="adv-setting-ft"]//div[@class="c-select-dropdown-list"]/p')
for ele in ele2:
    print(ele)
    if ele.text == "所有格式":
        ele.click()
    else:
        print("不是所有格式不点击")
  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值