Python+Selenium(1)- 环境搭建

简介: Selenium是目前最流行的web自动化测试工具,也常用于网络爬虫,已经更新到3以上的版本。


一,Selenium 简介


Selenium是目前最流行的web自动化测试工具,也常用于网络爬虫,已经更新到3以上的版本。

1,组件

它提供了以下web自动化测试组件:

  • Selenium IDE,Firefox浏览器的一个插件,提供简单的脚本录制、编辑与回放功能;
  • Selenium Remote Control (RC),是selenium 1 提供的组件,包含:Selenium Server(用于提供自动化测试服务)、Selenium Client(用于执行脚本);
  • Selenium Grid,用于对测试用例集做分布式处理(并行),现已集成到selenium server中;
  • WebDriver,Selenium2(包括Selenium3)抛弃了Selenium RC,而是使用WebDriver。相比Selenium RC,Webdriver 的API更容易理解和使用,可读性和可维护性也有较大提高。

因为后面我们的web自动化测试使用的是Selenium3(即WebDriver),这里对WebDriver做一下说明:

  • Webdriver不依赖于任何测试框架,除了必要的浏览器驱动,无需启动其他进程,也不必像Selenium 1那样需要先启动服务;
  • 设计模式:按照Server-Client的经典设计模式设计;
  • Server端:可以是任意的浏览器,当脚本启动浏览器时,该浏览器就是Server,它的职责是处理Client发送的请求并做出响应;
  • Client端:即我们的测试代码,测试代码发送HTTP请求给Server(即浏览器),Server接受请求,执行相应操作并返回结果;
  • 不同的浏览器,WebDriver需要依赖对应的浏览器驱动(如 chromedriver.exe)来转化浏览器的native调用,所以进行Selenium自动化时,需先下载对应的浏览器的驱动。

2,特点

  • 免费开源的自动化测试工具(框架)
  • 支持多平台:windows、linux、MAC
  • 支持多种浏览器:Chrome、Firefox、IE、Safari、Opera
  • 支持多种开发语言: java、ruby、python、C、C#等
  • 支持分布式执行测试用例集,即可并行执行测试

不过多赘述,当你看到这篇博客的时候,相信你已经对selenium有了个大概的认知。接下来我们开始在windows 10 上搭建python+selenium环境。


二,Python+Selenium环境搭建


1,下载python

建议下载python 3.x版本,官方已经停止对python 2.x版本维护更新。

windows版本官网下载地址:https://www.python.org/downloads/windows/

以安装Python 3.7.7为例,进入上面的网址,根据系统 (32/64位)选择,我这里选择下载64位的

微信图片_20220424214150.png

2,安装python

双击下载好的文件,一路默认安装即可,这里注意勾选添加python至环境变量,这样就不需要后续再设置环境变量了。

微信图片_20220424214154.png

3,验证是否安装完成

cmd窗口输入命令:python,出现版本信息等则说明安装成功,且环境变量设置成功,如下

微信图片_20220424214200.png

如果在上一步中,未勾选添加python至环境变量,输入python命令后会提示:不是内部或外部命令,只需将python的安装路径添加至环境变量即可,具体添加方法可百度。

4,安装Selenium

cmd窗口输入命令:pip install selenium,安装最新版本的selenium

安装完成后可以查看版本号,命令为:pip show selenium

安装指定版本命令为:pip install selenium==xxx

卸载命令:pip uninstall selenium

微信图片_20220424214204.png


三,启动Chrome浏览器


不同的浏览器,需要安装对应浏览器的Selenium驱动才能进行自动化测试。首先介绍Chrome浏览器。

1,安装Chrome浏览器

没有安装Chrome浏览器,则需先安装(建议官方地址下载)

官方下载地址为:https://www.google.cn/chrome/

下载安装过程很机械,不做过多说明。

2,查看Chrome版本

打开Chrome浏览器 --> 输入网址:chrome://settings/help --> 按回车键,如下:

微信图片_20220424214207.png

3,下载驱动 chromedriver

下载地址:http://chromedriver.storage.googleapis.com/index.html

也可以选择淘宝镜像下载,地址为:http://npm.taobao.org/mirrors/chromedriver/

低版本Chrome浏览器已经很少使用,就不做对应下载说明了。更新版本的Chrome浏览器(从70~87),只需根据自己电脑上安装的Chrome浏览器版本下载对应的chromedriver即可,如下:

微信图片_20220424214211.png

我电脑上的Chrome浏览器版本为 86.0.4240.111(正式版本) (64 位),选择下载如下:

微信图片_20220424214214.png

注意:这里按照chrome版本查找对应的chromedriver(只需对应大版本就行)下载即可,比如我的浏览器版本是86.0.4240.111,chromedriver里没有对应的86.0.4240.111版本,下载86.0.4240.22版本就行。

下载完成后,解压该zip文件得到chromedriver.exe文件,将chromedriver.exe放置在python安装目录的Scripts中

微信图片_20220424214218.png

注意:需要将解压出来的chromedriver.exe文件放置在Scripts中,而不是将解压得到的chromedriver文件夹放置在Scripts中,否则启动脚本时会报错。

4,启动Chrome浏览器

脚本如下:

# -*- coding:utf-8 -*-
# @author: 给你一页白纸
import time
from selenium import webdriver
driver = webdriver.Chrome() # 启动浏览器
driver.get("https://www.baidu.com") # 打开某个网址
time.sleep(10)
driver.quit()   # 关闭浏览器

注意:get()方法中URL要填写完整,如:"https://www.baidu.com",而不是"www.baidu.com",否则会报错

运行脚本,启动Chrome浏览器并打开百度网址,如下:

微信图片_20220424214226.png

相关文章
|
4月前
|
Web App开发 存储 前端开发
Python+Selenium自动化爬取携程动态加载游记
Python+Selenium自动化爬取携程动态加载游记
|
2月前
|
SQL 测试技术 数据库
healenium+python+selenium
上次介绍了如何利用healenium+java+selenium来实现selenium的自愈,这次介绍如何healenium+python+selenium。关于healenium+python+selenium网上资料更少,并且甚至是错误的。在著名的书籍《软件测试权威指南中》也是有一定问题的。现在介绍如下
130 4
|
6月前
|
数据采集 Web App开发 JavaScript
基于Selenium的Python爬虫抓取动态App图片
基于Selenium的Python爬虫抓取动态App图片
433 68
|
6月前
|
数据采集 Web App开发 前端开发
Python+Selenium爬虫:豆瓣登录反反爬策略解析
Python+Selenium爬虫:豆瓣登录反反爬策略解析
|
Web App开发 前端开发 JavaScript
探索Python科学计算的边界:利用Selenium进行Web应用性能测试与优化
【10月更文挑战第6天】随着互联网技术的发展,Web应用程序已经成为人们日常生活和工作中不可或缺的一部分。这些应用不仅需要提供丰富的功能,还必须具备良好的性能表现以保证用户体验。性能测试是确保Web应用能够快速响应用户请求并处理大量并发访问的关键步骤之一。本文将探讨如何使用Python结合Selenium来进行Web应用的性能测试,并通过实际代码示例展示如何识别瓶颈及优化应用。
528 5
|
9月前
|
数据采集 Web App开发 存储
打造高效的Web Scraper:Python与Selenium的完美结合
本文介绍如何使用Python结合Selenium,通过代理IP、设置Cookie和User-Agent抓取BOSS直聘的招聘信息,包括公司名称、岗位、要求和薪资。这些数据可用于行业趋势、人才需求、企业动态及区域经济分析,为求职者、企业和分析师提供宝贵信息。文中详细说明了环境准备、代理配置、登录操作及数据抓取步骤,并提醒注意反爬虫机制和验证码处理等问题。
221 1
打造高效的Web Scraper:Python与Selenium的完美结合
|
10月前
|
IDE 测试技术 项目管理
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
PyCharm是由JetBrains开发的Python集成开发环境(IDE),专为Python开发者设计,支持Web开发、调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试和版本控制等功能。它有专业版、教育版和社区版三个版本,其中社区版免费且适合个人和小型团队使用,包含基本的Python开发功能。安装PyCharm前需先安装Python解释器,并配置环境变量。通过简单的步骤即可在PyCharm中创建并运行Python项目,如输出“Hello World”。
3584 13
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
|
8月前
|
Java Shell C语言
课时14:Python环境搭建
接下来分享 Python 开发环境的搭建。其主要分为以下四部分。 1.开发环境搭建的意思 2.Python的解释器是什么 3.Python 的解释器分类 4.搭建步骤
165 1
|
9月前
|
Web App开发 数据采集 数据安全/隐私保护
Selenium库详解:Python实现模拟登录与反爬限制的进阶指南
Selenium库详解:Python实现模拟登录与反爬限制的进阶指南
|
数据采集 Web App开发 前端开发
Python爬虫进阶:Selenium在动态网页抓取中的实战
【10月更文挑战第26天】动态网页抓取是网络爬虫的难点,因为数据通常通过JavaScript异步加载。Selenium通过模拟浏览器行为,可以加载和执行JavaScript,从而获取动态网页的完整内容。本文通过实战案例,介绍如何使用Selenium在Python中抓取动态网页。首先安装Selenium库和浏览器驱动,然后通过示例代码展示如何抓取英国国家美术馆的图片信息。
687 6

推荐镜像

更多