[自动化测试: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 time

def 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图标。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

为你的网站增加点灵性:随系统变色

&#x1f33b; 前言 网站切换主题色已经是非常常见的功能了&#xff0c;提供浅色和暗色两种色调可以满足用户的使用习惯&#xff0c;帮助这些用户获得更好的访问体验。但是只能用户手动切换主题。 那如果用户已经将系统切换到了深色模式&#xff0c;当他们打开我们网站的时候…

虚拟机网络设置为桥接模式

1、打开VMware Workstation Pro&#xff0c;点击“虚拟机—设置”&#xff0c;进入虚拟机设置页面 2、点击“网络适配器”&#xff0c;网络连接选择桥接模式 3、点击“编辑—虚拟网络编辑器”&#xff0c;进入虚拟网络编辑器页面 4、选择桥接模式&#xff0c;并选择要桥接到的…

有趣的css - 跷跷板加载动画

大家好&#xff0c;我是 Just&#xff0c;这里是「设计师工作日常」&#xff0c;今天分享的是使用 css 模拟一个跷跷板效果的加载动画效果。 《有趣的css》系列最新实例通过公众号「设计师工作日常」发布。 目录 整体效果核心代码html 代码css 部分代码 完整代码如下html 页面…

YOLO目标检测

文章目录 一、含义二、与传统检测对比1.one-stage的优缺点2.two-stage的优缺点 三、MAP指标1.基本概念2.计算方法3.指标意义 一、含义 YOLO&#xff08;You Only Look Once&#xff09;是一种基于深度学习的目标检测算法&#xff0c;由Joseph Redmon等人于2016年提出。它的核心…

基于STM32的多功能MP3播放器

基于STM32的多功能MP3播放器 基于STM32的多功能MP3播放器一、项目背景与意义二、系统设计与实现2.1 硬件设计2.2 软件设计2.3 系统调试 三、功能实现与展望四、结论五、附录 基于STM32的多功能MP3播放器 在数字化时代&#xff0c;多功能播放器已成为我们生活中不可或缺的一部分…

Aurora 4.6.2 | 第三方谷歌商店,无需谷歌框架

Aurora Store是谷歌Play Store的一个非官方FOSS客户端&#xff0c;通常称为‘极光商店’&#xff0c;设计优雅。Aurora Store不仅可以下载、更新和搜索Play Store等应用程序&#xff0c;还为用户提供了新功能。应用提供范围广泛的游戏和应用程序&#xff0c;包括音乐流媒体、购…

一起搭WPF架构之LiveCharts.Wpf的简单了解与安装

一起搭WPF架构之LiveCharts.Wpf的简单了解与安装 前言LiveCharts.Wpf介绍LiveCharts.Wpf的安装总结 前言 根据项目需求&#xff0c;我单独留了一个界面用于进行数据分析。数据分析的内容考虑是采用图表的形式将SQLite数据库中存储的数据进行绘制成图&#xff0c;以便数据分析。…

【ARM】ARM架构参考手册_Part B 内存和系统架构(5)

目录 5.1关于缓存和写缓冲区 5.2 Cache 组织 5.2.1 集联性&#xff08;Set-associativity&#xff09; 5.2.2 缓存大小 5.3 缓存类型 5.3.1 统一缓存或分离缓存 5.3.2 写通过&#xff08;Write-through&#xff09;或写回&#xff08;Write-back&#xff09;缓存 5.3.3…

09_实现reactive之代理 Set 和 Map

目录 创建代理建立响应式联系避免污染原始数据处理 forEachfor...ofvalues 与 keys 方法 Set 和 Map 都有特定的属性和方法来操作自身&#xff0c;因此需要单独处理。 创建代理 我们来看一段案例代码&#xff0c;体验一下和它们的独特之处&#xff0c;如下&#xff1a; const…

柯桥俄语学习,旅游俄语中的支付和交际常用语句

支付用语 --Здравствуйте, счёт, пожалуйста. --Как вы будете платить? --Вы принимаете карты? --Да, пожалуйста, покажите QR - код. --Нам нужно ещё одно б…

云原生技术:nacos进化到servicemash

面试的时候跟面试官吹嘘说&#xff0c;现在主流的微服务架构&#xff0c;都已经用得熟熟的了&#xff0c;自己技术很不错。进了公司却被分到了API资产管理平台&#xff0c;要做一个类似于网关的东西。经过调研才发现&#xff0c;自己用的微服务架构已经过时了&#xff0c;什么&…

基于yolov10的驾驶员抽烟打电话安全带检测系统python源码+pytorch模型+评估指标曲线+精美GUI界面

【算法介绍】 基于YOLOv10的驾驶员抽烟、打电话、安全带检测系统是一种先进的驾驶行为监测系统。该系统利用YOLOv10算法的高效性和准确性&#xff0c;实现对驾驶员行为的实时检测与识别。 YOLOv10是一种最新的实时物体检测模型&#xff0c;其通过深度学习技术&#xff0c;如卷…

FastCFS高性能分布式文件系统集群搭建

FastCFS – 可以跑数据库的高性能通用分布式文件系统 简介 FastCFS 是一款强一致性、高性能、高可用、支持百亿级海量文件的通用分布式文件系统&#xff0c;可以作为MySQL、PostgreSQL、Oracle等数据库&#xff0c;k8s、KVM、FTP、SMB和NFS等系统的后端存储。 FastCFS 主要特…

L0G1000 Linux 基础知识

1.创建虚拟机 构建完成后 按需启动&#xff0c;本次启动30分钟&#xff0c;启动完成后出现下图界面。 点击进入开发机&#xff0c;出现初始界面。 2. 配置SSH密钥进行SSH远程连接 2.1打开Windows PowerShell,利用 ssh-keygen -t rsa 输入命令后一路回车就可以了&#xff0c;…

WXML-模板语法-条件渲染及列表渲染

条件渲染&#xff1a; wx&#xff1a;if: 结合block使用wx:if&#xff1a; hidden&#xff1a; wx:if和hidden对比&#xff1a; 列表渲染&#xff1a; wx&#xff1a;for&#xff1a; 1、在.js文件中创建一个数组&#xff1a; 2、创建一个view使用wx&#xff1a;for组件&…

【机器学习】并行计算(parallel computation)Part2

Asynchronous Parallel Gradient Descent Using Parameter Server 用Parameter Server实现异步并行梯度下降 Parameter Server这种编程模型可以实现异步并行梯度下降&#xff0c;架构采用的是Client-Server&#xff0c;通信方式是Message-passing&#xff0c;同步方式是异步的…

windows scp 免密码文件传输

windows scp 免密码文件传输 scp 是基于ssh加密服务的一种文件传输方式&#xff0c;是常见的linux主机间文件传输方式&#xff0c;在windows中也是支持的。 配置目标&#xff1a; 两台windows主机间通过scp命令行传输文件梳理概念 客户端&#xff1a; 通过命令行实现文件传输…

Mycat2安装配置

安装配置 安装 目前Mycat2下载地址已经不可访问&#xff0c;安装包可从参考资料[1]获取 下载后解压zip文件&#xff0c;将jar放在lib目录下 编辑配置文件 编辑conf文件夹下的prototypeDs.datasource.json 更改数据库相关信息 启动 windows环境下启动Mycat 以管理员身份运行…

[论文阅读]Deep Depth Completion of a Single RGB-D Image

摘要 我们的工作目标是完成RGB-D图像的深度通道。商用级深度摄像头通常无法捕捉光滑、明亮、透明和远处表面的深度信息。为了解决这个问题&#xff0c;我们训练了一个深度网络&#xff0c;该网络以RGB图像作为输入&#xff0c;并预测稠密的表面法线和遮挡边界。然后&#xff0…

只需15秒!这也太短了吧,单反自动拍VR就看这篇

在如今这个追求高效的时代&#xff0c;拍摄VR全景不再是复杂的技术挑战&#xff0c;而是轻松可实现的日常操作。720云相机电动云台的问世彻底颠覆了传统VR拍摄的方式&#xff0c;只需15秒&#xff0c;一键拍摄&#xff0c;极简流程即可呈现出令人惊叹的VR全景效果。 集成多功能…