【Python】Python之Selenium基础教程+实战demo:提升你的测试+测试数据构造的效率!

什么是Selenium?

Selenium是一套用于Web应用程序自动化测试的开源工具。它支持多种浏览器(如Chrome、Firefox、Safari等)和多种编程语言(如Java、Python、C#等),使测试人员可以编写脚本来自动化执行测试用例,提升测试效率。

在这里插入图片描述

Selenium基础用法详解

环境搭建

在开始编写Selenium脚本之前,我们需要搭建开发环境。

  1. 安装Python:从Python官网下载并安装最新版本的Python。

  2. 安装Selenium库

    pip install selenium
    
  3. 确认你的Chrome浏览器版本。你可以在Chrome浏览器中打开 chrome://settings/help 查看版本号。
    在这里插入图片描述

  4. 下载浏览器驱动
    ChromeDriver官网下载地址
    ChromeDriver官网最新版下载地址
    ChromeDriver国内镜像下载地址
    ChromeDriver国内镜像最新版下载地址

windows/mac用户需要将下载的驱动程序路径,添加到系统的环境变量中,方便Selenium识别和调用。
确认环境变量命令:chromedriver
在这里插入图片描述

编写第一个Selenium脚本

让我们通过一个简单的示例,了解如何使用Selenium进行网页自动化操作(代码示例,可以直接运行)

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
import time

# 创建一个Chrome浏览器实例
driver = webdriver.Chrome()


try:
    # 打开百度首页
    driver.get("https://www.baidu.com")
    # 确保页面加载完成
    time.sleep(2)
    # 找到搜索框
    search_box = driver.find_element(By.NAME, "wd")
    # 输入搜索关键词
    search_box.send_keys("Selenium Python")
    # 提交搜索
    search_box.send_keys(Keys.RETURN)
    # 等待页面加载
    time.sleep(2)
    # 获取搜索结果的标题
    results = driver.find_elements(By.CSS_SELECTOR, 'h3')
    print("搜索结果标题:")
    for index, result in enumerate(results):
        print(f"结果 {
     
      
      index + 1}: {
     
      
      result.text}")
    # 点击第一个搜索结果(如果存在)
    if results:
        results[0].click()
        time.sleep(10)  # 等待页面加载
        # 打印当前页面的标题
        print("当前页面标题:", driver.title)
    time.sleep(10)
finally:
    # 关闭浏览器
    driver.quit()

解析脚本

  1. 初始化WebDriver:创建一个Chrome浏览器实例,通过webdriver.Chrome()来指定使用的浏览器驱动。

  2. 打开网站:使用get方法访问xx的首页(https://www.baidu.com

  3. 定位搜索框:通过find_element(By.NAME, "wd")方法找到搜索框元素

  4. 输入搜索关键词:使用send_keys方法将"Selenium Python"输入到搜索框中,在使用send_keys(Keys.RETURN)模拟按下回车键提交搜索。

  5. 获取搜索结果标题:通过find_elements(By.CSS_SELECTOR, 'h3&#