[自动化测试:Selenium]:环境部署和Webdriver的使用

文章目录

  • 修改安装源
    • 打开Python Packages。
    • 点击梅花按钮。
    • 在弹出的对话框中,填入Name(随便填),Repository URL,选择下列的源,一般先选择清华源
    • 按OK确认。
    • 配置完成
  • 安装selenium
    • File→Settings→Project:STEST1→Python Interperter→点“+”→在新框中输入selenium。
    • 在下面搜索出来的一些列结果中,选择selenium,注意,可能有多个selenium,选择你想要的URL路径,这里我们选择的是清华源的路径,看图示。
    • 按Install Package,慢慢等待安装成功。
  • 安装浏览器驱动-Chrome
    • 安装Chrome浏览器。https://www.google.cn/chrome/index.html,去官网下载最新版本。
    • 下载对应的驱动
    • 进入下载文件夹,根据自己的需要下载对应版本的驱动。
    • 配置环境变量
    • 测试Chrome
      • 打开Pycharm,新建main.py,按如下输入:
  • press the green button in the gutter to run the script
      • 记录问题
      • 解决
      • 执行
      • 最后生效
    • 安装浏览器驱动-Firefox
      • 安装Firefox浏览器。https://www.firefox.com.cn/
      • 下载对应的驱动
    • 测试Firefox
  • 在Firefox中安装Selenium IDE
    • 点击进入,选择添加到Firefox
    • 勾选允许此扩展在隐私窗口中运行。(可以不勾选,但目前不清楚会产生什么问题,还是勾选)
    • 此时在Firefox右上角出现Selenium IDE图标。

修改安装源

打开Python Packages。

点击梅花按钮。

在弹出的对话框中,填入Name(随便填),Repository URL,选择下列的源,一般先选择清华源

国内源列表(一般是清华源比较好)
阿里云:http://mirrors.aliyun.com/pypi/simple/
豆瓣:http://pypi.douban.com/simple/
清华大学:https://pypi.tuna.tsinghua.edu.cn/simple/
中国科学技术大学:https://pypi.mirrors.ustc.edu.cn/simple/
本来的源:https://pypi.org/simple

按OK确认。

在这里插入图片描述

配置完成

在这里插入图片描述

安装selenium

File→Settings→Project:STEST1→Python Interperter→点“+”→在新框中输入selenium。

在下面搜索出来的一些列结果中,选择selenium,注意,可能有多个selenium,选择你想要的URL路径,这里我们选择的是清华源的路径,看图示。

按Install Package,慢慢等待安装成功。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

安装浏览器驱动-Chrome

安装Chrome浏览器。https://www.google.cn/chrome/index.html,去官网下载最新版本。

按照一下步骤查看版本号
在这里插入图片描述

下载对应的驱动

网址:https://googlechromelabs.github.io/chrome-for-testing/。
选择与版本号最接近的驱动下载。

复制下载链接到浏览器上触发下载
https://storage.googleapis.com/chrome-for-testing-public/130.0.6723.58/win64/chrome-headless-shell-win64.zip
在这里插入图片描述

进入下载文件夹,根据自己的需要下载对应版本的驱动。

解压下载的文件。
将chromedriver.exe拷贝至Chrome所在文件夹:C:\Program Files\Google\Chrome\Application。注意:可能在Program Files(X86)文件夹。
设置环境变量
在系统搜索框中输入“环境变量”,打开编辑系统环境变量界面,按照以下步骤,在系统环境变量的Path项目里添加chromedriver.exe所在目录。

拷贝到文件目录上方:C:\Program Files\Google\Chrome\Application
将下载的文件拷贝:

在这里插入图片描述
在这里插入图片描述

配置环境变量

在这里插入图片描述

测试Chrome

打开Pycharm,新建main.py,按如下输入:

from selenium import webdriver
import timedef test():driver = webdriver.Chrome()driver.get("https://www.shou.org.cn/")time.sleep(2)driver.quit()

press the green button in the gutter to run the script

if name == ‘main’:
test()
正常效果:打开开大页面,2s后自动关闭。
若出现如下错误,则由于Pycharm未更新上一步设置的环境变量所造成。关闭Pycharm后再重新打开即可。
在这里插入图片描述

记录问题

Traceback (most recent call last):
File “E:\WorkContent\shanghaikaifangdaxue\pythontest\pythontest\env-selenium\main.py”, line 1, in
from selenium import webdriver
File “E:\WorkContent\shanghaikaifangdaxue\pythontest\pythontest.venv\lib\site-packages\selenium\webdriver_init_.py”, line 20, in
from .chrome.webdriver import WebDriver as Chrome # noqa
File “E:\WorkContent\shanghaikaifangdaxue\pythontest\pythontest.venv\lib\site-packages\selenium\webdriver\chrome\webdriver.py”, line 18, in
from selenium.webdriver.chromium.webdriver import ChromiumDriver
File “E:\WorkContent\shanghaikaifangdaxue\pythontest\pythontest.venv\lib\site-packages\selenium\webdriver\chromium\webdriver.py”, line 18, in
from selenium.webdriver.chromium.remote_connection import ChromiumRemoteConnection
File “E:\WorkContent\shanghaikaifangdaxue\pythontest\pythontest.venv\lib\site-packages\selenium\webdriver\chromium\remote_connection.py”, line 18, in
from selenium.webdriver.remote.remote_connection import RemoteConnection
File “E:\WorkContent\shanghaikaifangdaxue\pythontest\pythontest.venv\lib\site-packages\selenium\webdriver\remote\remote_connection.py”, line 27, in
import urllib3
File “E:\WorkContent\shanghaikaifangdaxue\pythontest\pythontest.venv\lib\site-packages\urllib3_init_.py”, line 42, in
"urllib3 v2.0 only supports OpenSSL 1.1.1+, currently "
ImportError: urllib3 v2.0 only supports OpenSSL 1.1.1+, currently the ‘ssl’ module is compiled with ‘OpenSSL 1.1.0h 27 Mar 2018’. See: https://github.com/urllib3/urllib3/issues/2168

Process finished with exit code 1

解决

这个错误信息表明你的Python环境中安装的urllib3库版本2.0需要OpenSSL 1.1.1或更高版本,但是当前Python的ssl模块是使用OpenSSL 1.1.0h版本编译的。这导致了不兼容的问题。

要解决这个问题,你可以采取以下几种方法之一:

升级OpenSSL:
如果你有权限和能力在你的系统上升级OpenSSL库,并且确保Python重新编译以使用新的OpenSSL版本,这将是解决这个问题的最直接方法。这通常涉及到安装新版本的OpenSSL,然后重新编译Python以确保它链接到新的库。
降级urllib3:
如果升级OpenSSL不可行或太复杂,你可以考虑降级urllib3到一个与你的OpenSSL版本兼容的版本。你可以使用pip来降级:
bash
pip install “urllib3<2.0”
这将安装一个低于2.0版本的urllib3,该版本应该与你的OpenSSL 1.1.0h兼容。
使用虚拟环境:
如果你不想在系统级别更改OpenSSL或urllib3,你可以创建一个新的Python虚拟环境,并在其中安装一个与当前系统OpenSSL版本兼容的urllib3版本。使用venv或conda创建新环境,并在其中安装所需的库版本。
检查系统依赖:
确保你的操作系统和所有相关的库都是最新的,有时候操作系统更新会包含对OpenSSL的更新。
查看错误链接:
错误信息中提供了一个链接(https://github.com/urllib3/urllib3/issues/2168),你可以访问这个链接查看是否有其他用户遇到类似问题以及他们是如何解决的。
选择哪种方法取决于你的具体需求和系统配置。如果你不确定如何操作,可能需要寻求一个有经验的系统管理员或开发者的帮助。

执行

(.venv) PS E:\WorkContent\shanghaikaifangdaxue\pythontest\pythontest> pip install “urllib3<2.0”
Collecting urllib3<2.0
Obtaining dependency information for urllib3<2.0 from https://files.pythonhosted.org/packages/33/cf/8435d5a7159e2a9c83a95896ed596f68cf798005fe107cc655b5c5c14704/urllib3-1.26.20-py2.py3-none-any.whl.metadata
Downloading urllib3-1.26.20-py2.py3-none-any.whl.metadata (50 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 50.1/50.1 kB 169.6 kB/s eta 0:00:00
Downloading urllib3-1.26.20-py2.py3-none-any.whl (144 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 144.2/144.2 kB 119.1 kB/s eta 0:00:00
Installing collected packages: urllib3
Attempting uninstall: urllib3
Found existing installation: urllib3 2.0.7
Uninstalling urllib3-2.0.7:
Successfully uninstalled urllib3-2.0.7
Successfully installed urllib3-1.26.20

[notice] A new release of pip is available: 23.2.1 -> 24.0
[notice] To update, run: python.exe -m pip install --upgrade pip
(.venv) PS E:\WorkContent\shanghaikaifangdaxue\pythontest\pythontest>

最后生效

在这里插入图片描述

安装浏览器驱动-Firefox

安装Firefox浏览器。https://www.firefox.com.cn/

下载对应的驱动

网址:https://github.com/mozilla/geckodriver/releases
翻到底部Assets处,点击Show all asets

测试Firefox

在Firefox中安装Selenium IDE

点击进入,选择添加到Firefox

勾选允许此扩展在隐私窗口中运行。(可以不勾选,但目前不清楚会产生什么问题,还是勾选)

此时在Firefox右上角出现Selenium IDE图标。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/56260.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

word删除空白页 | 亲测有效

想要删掉word里面的末尾空白页&#xff0c;但是按了delete之后也没有用 找了很久找到了以下亲测有效的方法 1. 通过鼠标右键在要删除的空白页面处显示段落标记 2. 在字号输入01&#xff0c;按ENTER&#xff08;回车键&#xff09; 3.成功删除了&#xff01;&#xff01; PS…

【ArcGIS Pro实操第八期】绘制WRF三层嵌套区域

【ArcGIS Pro实操第八期】绘制WRF三层嵌套区域 数据准备ArcGIS Pro绘制WRF三层嵌套区域Map-绘制三层嵌套区域更改ArcMap地图的默认显示方向指定数据框范围 Map绘制研究区Layout-布局出图 参考 本博客基于ArcGIS Pro绘制WRF三层嵌套区域&#xff0c;具体实现图形参考下图&#x…

两性离子水凝胶助力微针传感器:稳定灵敏的监测神器

大家好&#xff01;今天我要向大家介绍一项关于生物相容性核壳微针传感器的研究——《Biocompatible Core–Shell Microneedle Sensor Filled with Zwitterionic Polymer Hydrogel for Rapid Continuous Transdermal Monitoring》发表于《ACS Nano》&#xff0c;该传感器填充两…

爬虫结合项目实战

由于本人是大数据专业&#xff0c;所以准备的是使用pycharm工具进行爬虫爬取数据&#xff0c;然后实现一个可视化大屏 参考项目&#xff1a; 1.医院大数据可视化最后展示 2. 大数据分析可视化系统展示 代码包&#xff1a;

自由学习记录(13)

服务端常见的“资源” 在服务端&#xff0c;常见的“资源”指的是服务端提供给客户端访问、使用、处理或操作的各种数据和功能。根据不同类型的服务和应用场景&#xff0c;服务端的资源种类可以非常广泛。以下是一些常见的服务端资源类型&#xff1a; 1. 文件和静态资源 网页…

LSP的建立

MPLS需要为报文事先分配好标签&#xff0c;建立一条LSP&#xff0c;才能进行报文转发。LSP分为静态LSP和动态LSP两种。 静态LSP的建立 静态LSP是用户通过手工为各个转发等价类分配标签而建立的。由于静态LSP各节点上不能相互感知到整个LSP的情况&#xff0c;因此静态LSP是一个…

阿里云云盘在卸载时关联到PHP进程,如何在不影响PHP进程情况下卸载磁盘

1.问题&#xff1a; 在使用umount /dev/vdc1 卸载磁盘时&#xff0c;提示如下&#xff0c;导致无法在Linux系统下卸载磁盘 umount /dev/vdc1 umount: /var/www/html/*/eshop/IFile3: target is busy.(In some cases useful info about processes that usethe device is found…

管家婆财贸ERP BB014.销售按库存选存货

最低适用版本: 财贸系列 22.8 插件简要功能说明: 销售按库存选存货插件,多元化价格跟踪体系用户根据存货+仓库自设仓库协议价仓库协议价支持手工或通过售价生成便捷录入销售单开单,无需选择客户,支持按存货查询库存余额及仓库协议价,选中存货即可将存货默认出库单位一级…

linux—基础命令及相关知识

1.0Linux的哲学思想&#xff08;优势&#xff09; 1、一切都是一个文件&#xff0c;一切硬件设备包括硬件接口都可以以文件形式显示 2、系统小型&#xff0c;轻量级&#xff0c;300个包&#xff08;不装桌面的情况下&#xff09; 3、避免令人困惑的用户界面&#xff08;图形…

在 Spring 中使用 @EhCache 注解作为缓存

文章目录 项目概况项目设置一个简单的 RESTful Web 服务Spring 整合 EhCache第 1 步&#xff1a;更新依赖项以使用 EhCache Spring 注解第 2 步&#xff1a;设置自定义缓存管理器第 3 步&#xff1a;配置 EhCache第 4 步&#xff1a;测试缓存 刷新缓存总结推荐阅读文章 EhCache…

Linux系统基础-进程间通信(3)_模拟实现匿名管道

个人主页&#xff1a;C忠实粉丝 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 C忠实粉丝 原创 Linux系统基础-进程间通信(3)_模拟实现匿名和命名管道 收录于专栏[Linux学习] 本专栏旨在分享学习Linux的一点学习笔记&#xff0c;欢迎大家在评论区交流讨论&a…

docker入门(三)自定义部署docker镜像

docker系列d​​​​​​​docker入门&#xff08;一&#xff09;安装及镜像命令_docker国内源-CSDN博客文章浏览阅读1.5k次&#xff0c;点赞44次&#xff0c;收藏12次。注意&#xff1a;是强依赖Linux环境&#xff0c;即便在windows上部署Docker其本质也都是先安装一个虚拟机&…

SpringBoot3.x和OCR构建车牌识别系统

本专题旨在展示 OCR 技术与 SpringBoot3.x 框架结合的广泛应用。我们会深入探讨它在医疗、金融、教育、交通、零售、公安等多个领域的现实应用。每个应用场景都会提供详细的实例、面临问题的分析与解决策略&#xff0c;以帮助您深入理解 OCR 技术在实践中的关键作用。让我们一同…

糖果——差分约束 + 正环判定及其优化(手搓栈 + 标记法)

题目 思考 这里转为判定负环可以是可以&#xff0c;但是不能用超级源点了&#xff08;改为把节点全部压入&#xff09;&#xff0c;因为按照题目条件&#xff0c;建立的应该是各个节点指向超级源点的有向边&#xff0c;这显然破坏了超级源点的功能 代码 #include <bits/st…

ArcGIS002:软件自定义设置

摘要&#xff1a;本文详细介绍安装arcgis10.2后软件自定义设置内容&#xff0c;包括工具条的启用、扩展模块的启用、如何加载项管理器、快捷键设置、样式管理器的使用以及软件常规设置。 一、工具条的启用 依次点击菜单栏【自定义】->【工具条】&#xff0c;根据工作需求勾…

某ai gpt的bug

某ai gpt的bug 背景 遇到了一个奇怪的现象&#xff1a; 输入内容 2024-10-21 10:09:31,052 ERROR o.a.j.t.JMeterThread: Test failed! java.lang.IllegalArgumentException:输出结果

使用 PyTorch 构建 LSTM 股票价格预测模型

目录 引言准备工作1. 训练模型&#xff08;train.py&#xff09;2. 模型定义&#xff08;model.py&#xff09;3. 测试模型和可视化&#xff08;test.py&#xff09;使用说明模型调整结论 引言 在金融领域&#xff0c;股票价格预测是一个重要且具有挑战性的任务。随着深度学习…

即时通讯增加Redis渠道

情况说明 在本地和服务器分别启动im服务&#xff0c;当本地发送消息时&#xff0c;会发现服务器上并没有收到消息 初版im只支持单机版&#xff0c;不支持分布式的情况。此次针对该情况对项目进行优化,文档中贴出的代码非完整代码&#xff0c;可自行查看参考资料[2] 代码结构调…

Docker安装ocserv教程(效果极佳)

本章教程,介绍如何在Debain系统上安装ocserv。安装方式是使用Docker方式部署。 一、安装Docker curl -sSL https://file.ewbang.com/docker/debian/install_docker.sh -o install_docker.sh && bash install_docker.sh二、拉取镜像 docker pull tommylau/ocserv

Jsoup在Java中:解析京东网站数据

对于电商网站如京东来说&#xff0c;其页面上的数据包含了丰富的商业洞察。对于开发者而言&#xff0c;能够从这些网站中提取有价值的信息&#xff0c;进行分析和应用&#xff0c;无疑是一项重要的技能。本文将介绍如何使用Java中的Jsoup库来解析京东网站的数据。 Jsoup简介 …