
自动化测试:第一个 Selenium 脚本(3)
前言
本节将在 Python + Selenium + PyCharm 的环境下,编写第一个 Selenium 脚本。
知识点
-
Selenium 的基本使用
-
实例:使用 Selenium 打开百度进行搜索
创建项目
打开 PyCharm 创建项目

点击 New Project,新建项目。

不使用虚拟环境,点击 先前配置的解释器,如果没有配置解释器,点击 添加解释器——添加本地解释器

选择 系统解释器 (System Interpreter),点击 确定。
项目创建成功后如下图所示:

用 Selenium 打开百度
从 Selenium 导入 webdriver
from selenium import webdriver
创建 webdriver 对象
driver = webdriver.Chrome()
打开网页
driver.get('https://www.baidu.com')
完整代码

from selenium import webdriver # 从 Selenium 导入 webdriver
driver = webdriver.Chrome() # 创建 webdriver 对象
driver.get('https://www.baidu.com') # 打开网页
input("按 Enter 退出程序") # 防止程序自动退出
运行代码

点击右上角的运行按钮,运行代码。

运行成功后,浏览器会自动打开百度首页。

在终端按下 Enter 键后,程序退出。
实例:使用 Selenium 打开百度进行搜索
在前面的流程中,我们已经学会了使用 Selenium 打开百度,那么如何使用 Selenium 在百度中进行搜索呢?
手动进行搜索
在自动化操作之前,我们需要先手动进行一次搜索,以便观察搜索的过程。
- 打开浏览器,输入
https://www.baidu.com,打开百度首页。

- 选中搜索框,输入
Selenium。

- 点击搜索按钮。

自动化搜索
与手动搜索的流程相同,自动化搜索的流程也是:
-
创建 webdriver 对象,打开百度首页。
-
选中搜索框,输入
Selenium。 -
找到搜索按钮,点击搜索按钮。
我们已经做到了创建 webdriver 对象,打开百度首页,那么接下来我们需要做的就是找到搜索框,输入 Selenium,找到搜索按钮,点击搜索按钮。
找到搜索框,输入 Selenium
在 selenium 中,我们可以通过 find_element 方法来找到页面中的元素。
在本次实例中,我们需要找到搜索框元素,我们可以通过查找搜索框元素的 id 来找到搜索框元素。
用浏览器打开百度首页,右键点击搜索框,点击 检查。

在 input 标签中,我们可以看到 id="kw",这就是搜索框的 id。
在 Selenium 中,我们可以通过 find_element(By.ID, 'kw') 来找到搜索框元素。
driver.find_element(By.ID, 'kw')
在找到搜索框元素后,我们需要向搜索框中输入 Selenium,我们可以通过 send_keys 方法来向搜索框中输入 Selenium。
driver.find_element(By.ID, 'kw').send_keys('Selenium')
找到搜索按钮,点击搜索按钮
与找到搜索框类似,我们可以通过查找搜索按钮元素的 id 来找到搜索按钮元素。
右键点击搜索按钮,点击 检查。

在 input 标签中,我们可以看到 id="su",这就是搜索按钮的 id。
在 Selenium 中,我们可以通过 find_element(By.ID, 'su') 来找到搜索按钮元素。
driver.find_element(By.ID, 'su')
在找到搜索按钮元素后,我们需要点击搜索按钮,我们可以通过 click 方法来点击搜索按钮。
driver.find_element(By.ID, 'su').click()
完整代码
from selenium import webdriver # 从 Selenium 导入 webdriver
from selenium.webdriver.common.by import By # 从 Selenium 导入 By
driver = webdriver.Chrome() # 创建 webdriver 对象
driver.get('https://www.baidu.com') # 打开网页
driver.find_element(By.ID, 'kw').send_keys('Selenium') # 找到搜索框,输入 Selenium
driver.find_element(By.ID, 'su').click() # 找到搜索按钮,点击搜索按钮
input("按 Enter 退出程序") # 防止程序自动退出
运行代码

评论
评论加载中…