Selenium 简单入门操作示例

最简单的 Selenium 示例(Python版)

下面是一个完整的、最简单的 Selenium 操作示例,带你快速上手:

python 复制代码
from selenium import webdriver
from selenium.webdriver.common.by import By
import time

# 1. 启动浏览器(这里使用Chrome)
driver = webdriver.Chrome()

# 2. 打开网页(以百度为例)
driver.get("https://www.baidu.com")

# 3. 找到搜索框并输入内容
search_box = driver.find_element(By.ID, "kw")  # 通过ID定位搜索框
search_box.send_keys("Selenium自动化测试")     # 输入搜索关键词

# 4. 找到搜索按钮并点击
search_button = driver.find_element(By.ID, "su")  # 通过ID定位搜索按钮
search_button.click()                            # 点击搜索

# 5. 等待3秒查看结果
time.sleep(3)

# 6. 关闭浏览器
driver.quit()

代码解析

  1. 导入必要模块

    • webdriver:Selenium的核心模块

    • By:用于指定元素定位方式

    • time:用于简单等待

  2. 启动浏览器

    • webdriver.Chrome() 会自动启动Chrome浏览器

    • 确保已安装ChromeDriver并配置好环境变量

  3. 打开网页

    • get() 方法用于打开指定URL
  4. 元素定位与操作

    • find_element(By.ID, "kw"):通过HTML元素的ID属性定位

    • send_keys():向输入框输入文本

    • click():点击元素

  5. 简单等待

    • time.sleep(3):让程序暂停3秒,方便查看结果
  6. 关闭浏览器

    • quit():关闭浏览器并退出驱动

实际运行效果

当你运行这段代码时,你会看到:

  1. 自动打开Chrome浏览器

  2. 访问百度首页

  3. 在搜索框中自动输入"Selenium自动化测试"

  4. 自动点击"百度一下"按钮

  5. 停留3秒展示搜索结果

  6. 最后自动关闭浏览器

进阶小技巧

  1. 如果找不到ChromeDriver

    python 复制代码
    # 指定ChromeDriver路径
    driver = webdriver.Chrome(executable_path="你的chromedriver路径")
  2. 无头模式运行(不显示浏览器界面)

    python 复制代码
    from selenium.webdriver.chrome.options import Options
    
    options = Options()
    options.add_argument("--headless")  # 启用无头模式
    driver = webdriver.Chrome(options=options)
  3. 更智能的等待方式(推荐)

    python 复制代码
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    
    # 等待最多10秒,直到元素出现
    element = WebDriverWait(driver, 10).until(
        EC.presence_of_element_located((By.ID, "kw"))
    )

这个简单示例已经包含了Selenium最核心的操作:启动浏览器、打开网页、定位元素、操作元素和关闭浏览器。你可以基于这个框架扩展更复杂的自动化测试脚本。

相关推荐
网络安全-杰克4 小时前
Jmeter压力测试工具安装与使用
自动化测试·软件测试·测试工具·jmeter·职场和发展
Wpa.wk5 小时前
接口自动化 - 接口鉴权处理常用方法
java·运维·测试工具·自动化·接口自动化
0思必得05 小时前
[Web自动化] Selenium获取元素的子元素
前端·爬虫·selenium·自动化·web自动化
Wpa.wk6 小时前
接口自动化 - 多环境统一文件配置 +多响应统一转换处理
运维·服务器·测试工具·自动化·接口自动化·统一配置
DolitD6 小时前
云流技术深度剖析:国内云渲染主流技术与开源和海外厂商技术实测对比
功能测试·云原生·开源·云计算·实时云渲染
@zulnger7 小时前
selenium 自动化测试工具实战项目(窗口切换)
selenium·测试工具·自动化
顾北1217 小时前
MCP服务端开发:图片搜索助力旅游计划
java·spring boot·dubbo
工控小龙人20 小时前
玩具电子HMI:电子玩具的功能测试界面
功能测试
橘颂TA20 小时前
【测试】高效浏览器操作:基础功能与优化设置大全
c++·功能测试·职场和发展·测试·web测试
0思必得01 天前
[Web自动化] Selenium处理滚动条
前端·爬虫·python·selenium·自动化