📜  Selenium Python教程(1)

📅  最后修改于: 2023-12-03 15:05:08.717000             🧑  作者: Mango

Selenium Python教程

Selenium Python是一款用于Web自动化测试的Python库,可以模拟用户在浏览器上进行的各种操作,如输入文本、点击按钮、拖放元素等等。本教程将从基础开始,逐步讲解Selenium Python的用法和应用。

安装

在使用Selenium Python之前,需要先安装Selenium库。可以使用pip进行安装:

pip install selenium

另外,还需要下载相应浏览器的WebDriver,并将其添加到系统路径中。常用浏览器的WebDriver下载地址如下:

  • Chrome:https://sites.google.com/a/chromium.org/chromedriver/downloads
  • Firefox:https://github.com/mozilla/geckodriver/releases
  • Edge:https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
第一个Selenium Python程序

下面的代码展示了如何使用Selenium Python打开网页:

from selenium import webdriver

browser = webdriver.Chrome()  # 打开Chrome浏览器
browser.get('http://www.baidu.com')  # 打开百度首页
查找元素

Selenium Python可以根据元素的标签名、ID、class、name等属性查找网页元素。下面的代码展示了如何根据元素ID查找并输入文本:

from selenium import webdriver

browser = webdriver.Chrome()
browser.get('http://www.baidu.com')

input_box = browser.find_element_by_id('kw')  # 查找搜索框
input_box.send_keys('Python')  # 在搜索框中输入Python
点击按钮

可以使用Selenium Python模拟用户点击按钮的操作。下面的代码展示了如何在搜索框中输入关键词,并点击搜索按钮:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

browser = webdriver.Chrome()
browser.get('http://www.baidu.com')

input_box = browser.find_element_by_id('kw')
input_box.send_keys('Python')
input_box.send_keys(Keys.RETURN)  # 点击回车键
切换窗口

当网页中存在多个窗口时,可以使用Selenium Python切换窗口。下面的代码展示了如何打开一个新窗口,并切换到新窗口:

from selenium import webdriver

browser = webdriver.Chrome()
browser.get('http://www.baidu.com')

browser.execute_script("window.open('http://www.google.com');")  # 打开新窗口
browser.switch_to.window(browser.window_handles[-1])  # 切换到新窗口
拖放元素

Selenium Python还可以模拟用户拖放元素的操作。下面的代码展示了如何拖动元素到指定位置:

from selenium import webdriver
from selenium.webdriver import ActionChains

browser = webdriver.Chrome()
browser.get('http://jqueryui.com/resources/demos/droppable/default.html')

source = browser.find_element_by_id('draggable')  # 找到拖动的元素
target = browser.find_element_by_id('droppable')  # 找到放置的位置

action = ActionChains(browser)  # 定义拖拽操作
action.drag_and_drop(source, target).perform()  # 拖拽元素到指定位置
总结

Selenium Python是一款十分强大的Web自动化测试工具,在项目开发中可以大大提升测试效率和测试准确性。本教程只是介绍了Selenium Python的基础用法,用户可以根据需求逐步深入学习和应用。