当前位置: 首页 > article >正文

selenium+python

selenium

八大查找元素

from selenium import webdriver
from selenium.webdriver.common.by import By

# 创建一个 WebDriver 实例
driver = webdriver.Chrome()

# 打开网页
driver.get("https://www.baidu.com/")

# 使用 find_element 方法查找元素
element = driver.find_element(By.ID, "kw")

element.click()
element.send_keys("")
element.clear()

element = driver.find_element(By.NAME, "wd")

element = driver.find_element(By.CLASS_NAME, "s_ipt")

element = driver.find_element(By.TAG_NAME, "tag_name")

element = driver.find_element(By.LINK_TEXT, "新闻")

element = driver.find_element(By.PARTIAL_LINK_TEXT, "新")

element = driver.find_element(By.CSS_SELECTOR, "css_selector")

element = driver.find_element(By.XPATH, "//*[@id='kw']")

在这里插入图片描述

driver.find_elements()用法

在这里插入图片描述

获取标签属性名的值

element = driver.find_element(By.NAME, "wd")
element.get_attribute("class")
# 获取文本信息
driver.find_element(By.LINK_TEXT,"新闻").text

进入frame框架

# 比如<frame name="haha">
driver.switch_to.frame("haha")

出框架

driver.switch_to.default_content()

多选框

sel = Select(driver.find_element(By.NAME,"select_name"))
# 假如<option value="1"></option>
sel.select_by_value("1")

# <option value="1">哈哈</option>
sel.select_by_visible_text("哈哈")

sel.select_by_index(3)

弹窗

# alert(只有确认),confirm(有确认有取消),prompt(有确认有取消,可以输入值)
ale = driver.switch_to.alert
# 确认弹窗
ale.accept()
# 取消弹窗
ale.dismiss()
# 获取弹窗文本
strs = ale.text

文件上传

driver.find_element(By.XPATH,"").send_keys(r"D://")

DDT

在这里插入图片描述

封装PO模式

base类
在这里插入图片描述
登录类
在这里插入图片描述
商品列表类
在这里插入图片描述

testcase类
在这里插入图片描述


http://www.kler.cn/a/154869.html

相关文章:

  • Windows11无法打开Windows安全中心主界面
  • 登录授权流程
  • 论文阅读(十四):贝叶斯网络在全基因组DNA甲基化研究中的应用
  • 大数据治理实战:架构、方法与最佳实践
  • 萌新学 Python 之数值处理函数 round 四舍五入、abs 绝对值、pow 幂次方、divmod 元组商和余数
  • Versal - 基础3(AXI NoC 专题+仿真+QoS)
  • 深度学习常见回归分支算法逐步分析,各种回归之间的优缺点,适用场景,举例演示
  • Linux 定时关机 crontab
  • ES-ELSER 如何在内网中离线导入ES官方的稀疏向量模型(国内网络环境下操作方法)
  • 五、ZooKeeper的shell操作
  • AD7124-4 实测热电偶数据读取,电压精度到稳定到±1uV, 电压波动260nV, 温度精度到±0.01℃
  • ChatGPT成为“帮凶”:生成虚假数据集支持未知科学假设
  • 1423. 可获得的最大点数 --力扣 --JAVA
  • Mysql 主从一致性检测
  • Mongoose 开源库--http协议 header 报头解析
  • 测试:性能测试
  • CSS:calc() 函数 / 动态计算长度值 / 不同场景使用
  • Django如何设置时区为北京时间?
  • iRDMA流量控制总结 - 5
  • 手摸手Element-ui路由VueRoute
  • RHEL8更新安全补丁,删除旧内核
  • Qt将打印信息输出到文件
  • ios(swiftui) 属性包装器详解
  • 手机爬虫用Fiddler详细教程
  • rust 日期和时间格式化输出
  • 关于IP与端口以及localhost