首页 > 编程知识 正文

Python Selenium 实战

时间:2023-11-20 17:51:38 阅读:302285 作者:YITB

Python Selenium 是一个强大的自动化测试工具,可以模拟用户在浏览器中的操作,并自动执行一系列的任务。本文将从多个方面介绍如何使用 Python Selenium 进行实战。

一、安装和配置

1、安装 Python Selenium

pip install selenium

2、安装浏览器驱动

根据使用的浏览器选择相应的驱动,并将驱动程序添加到系统的环境变量中。

对于 Chrome 浏览器:

from selenium import webdriver

# 设置 Chrome 驱动的路径
chrome_driver = "/path/to/chromedriver"

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

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

二、元素定位

1、通过 ID 定位元素

# 通过 ID 查找元素
element = driver.find_element_by_id("my-element")

2、通过 class 名称定位元素

# 通过 class 名称查找元素
element = driver.find_element_by_class_name("my-class")

3、通过标签名称定位元素

# 通过标签名称查找元素
element = driver.find_element_by_tag_name("h1")

三、操作网页

1、点击按钮

# 通过 ID 定位按钮
button = driver.find_element_by_id("my-button")

# 点击按钮
button.click()

2、填写表单

# 通过 ID 定位输入框
input_box = driver.find_element_by_id("my-input")

# 清空输入框
input_box.clear()

# 填写内容
input_box.send_keys("Hello, World!")

3、获取元素属性值

# 通过 ID 定位元素
element = driver.find_element_by_id("my-element")

# 获取元素的文本内容
text = element.text

# 获取元素的链接地址
link = element.get_attribute("href")

四、处理弹窗

1、切换窗口

# 获取当前窗口的句柄
current_window = driver.current_window_handle

# 获取所有窗口的句柄
all_windows = driver.window_handles

# 切换到新开的窗口
for window in all_windows:
    if window != current_window:
        driver.switch_to.window(window)
        break

2、处理警告框

# 处理简单的警告框
alert = driver.switch_to.alert
alert.accept()

3、处理确认框

# 处理确认框
confirm = driver.switch_to.alert
confirm.accept()  # 点击确认按钮
confirm.dismiss()  # 点击取消按钮

五、执行 JavaScript

通过 Selenium,我们还可以执行 JavaScript 代码,以实现更加复杂的功能。

# 执行 JavaScript 代码
driver.execute_script("document.getElementById('my-element').style.backgroundColor = 'red';")

六、其他技巧

1、等待页面加载完成

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

# 等待页面的某个元素出现
element = WebDriverWait(driver, 10).until(
    EC.presence_of_element_located((By.ID, "my-element"))
)

2、截屏保存

# 截屏保存
driver.save_screenshot("screenshot.png")

3、模拟滚动

# 模拟滚动到页面底部
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")

本文介绍了 Python Selenium 的安装和配置,元素定位,操作网页,处理弹窗,执行 JavaScript 以及其他一些技巧。通过这些实战内容,你可以更好地应用 Python Selenium 来自动化测试和执行各种任务。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。