Playwright安装和基本使用(ui/web自动化)

news2024/11/27 8:25:40

1.简介

Playwright是2021年微软开源的一个项目「playwright-python」。针对 Python 语言的纯自动化工具,它可以通过单个API自动执行 Chromium,Firefox 和 WebKit 浏览器,同时支持以无头模式、有头模式运行。
Playwright(Git)官网:
https://github.com/microsoft/playwright
Playwright官方API:
https://playwright.dev/python/

2.特性

  1. 速度快, 是Selenium的好几倍;
  2. 支持异步运行;
  3. 自动等待API;
  4. 可拦截请求,随意mock。

3.前置条件

  1. 网络环境良好(安装过程可能会比较慢,请耐心等待,如果中断,请重新安装);
  2. Playwright是一款Python第三方库工具,需具备Python3.7及以上环境。

4.安装步骤

步骤1

验证Python环境,需3.7以上版本。

python -V

 

步骤2

安装Playwright

pip install playwright

 

安装Playwright内置浏览器

python -m playwright install

 

步骤3

安装完成验证

playwright -V

 

5.基本使用

Playwright脚本录制器

playwright codegen

输入命令后,会自动启动工具及浏览器,可在浏览器中进行操作,工具中会记录操作过程,生成脚本。

 工具帮助

playwright -h

6.其他

录制脚本并保存到指定路径

示例:启动脚本录制器,选择chromium内核浏览器,打开百度首页进行录制,并生成Python语言脚本,保存文件名称为“Test01.py”。

playwright codegen --target python -o Test01.py -b cr https://www.baidu.com 

说明:

  1. 选择其他浏览器,可根据-h查找浏览器对应的指令,当前版本1.20.1,支持Chromium/Firefox/WebKit;
  2. 保存文件的路径为当前输入命令的路径,例如:在“D:\”输入命令,则脚本就保存在“D:\”目录中。

 

常见问题
pip install playwright指令报错
常见的执行失败原因包括:

下载依赖中断:重新执行;
pip版本过低,导致获取相关依赖失败:根据提示的指引执行“python.exe -m pip install --upgrade pip”自动升级pip到最新版本,再重新执行。
python -m playwright install报错
常见的执行失败原因包括:

安装中断:最常见是网络问题,重新反复执行(在网络环境好的时候执行)。

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

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

相关文章

美国CPC认证是什么认证

美国CPC认证是一种针对儿童产品的认证,旨在确保这些产品的安全性。CPC全称为Consumer Product Certification,即消费品认证,是美国消费品安全委员会(CPSC)所推行的一种自愿性认证制度。通过CPC认证的产品,意…

人证比对接口在游戏行业的作用

人证比对接口又叫实人认证接口、人脸身份证比对接口、人脸实名认证接口,这个接口在很多行业都有重大作用,特别是确认当前用户信息至关重要。今天我们来聊一聊实人认证接口在游戏行业的作用。 今天为什么聊这个话题呢,主要就是最近热搜都被杭…

AR远程空间标注Vuforia+WebRTC音视频通话和空间标注功能

AR远程空间标注VuforiaWebRTC音视频通话和空间标注功能 视频学习地址:https://www.bilibili.com/video/BV1ZT4y187mG/?vd_sourcefc4b6cdd80b58c93a280fd74c37aadbf

LeetCode110:平衡二叉树

题目描述 给定一个二叉树,判断它是否是 平衡二叉树 解题思想 使用递归依次计算左子树的高度和右子树的高度 代码 class Solution { public:int height(TreeNode* node) {if (node nullptr) return 0;int leftT height(node->left);if (leftT -1) return -1;…

武汉星起航:亚马逊助力中国卖家拓展全球市场,实现品牌价值最大化

亚马逊,作为全球电商的领军平台,不仅为消费者提供了丰富的购物选择,同时也为中国卖家带来了前所未有的益处和在中国市场的巨大优势。 亚马逊为中国卖家提供了一个全球化的销售平台。这个平台不仅连接了中国与世界的消费者,还为中…

标准C库文件操作

open 系列API 和 fopen系列API的区别 1.来源: -open 是UNIX系统调用函数(包括LINUX系统),返回的是文件描述符 -fopen是ANSIC标准的C语言库函数,在不同系统重调用不同内核的API 2.移植性: fopen 是C标准函数,具有良好的移植性; 而…

Vue 移动端(H5)项目怎么实现页面缓存(即列表页面进入详情返回后列表页面缓存且还原页面滚动条位置)keep-alive简单使用

一、需求 产品要求:Vue移动端项目进入列表页,列表页需要刷新,而从详情页返回列表页,列表页则需要缓存并且还原页面滚动条位置 二、实现思路 1、使用Vue中的keep-alive组件,keep-alive提供了路由缓存功能 2、因为我项…

基于知识图谱的推理:智能决策与自动发现

基于知识图谱的推理:智能决策与自动发现 一、引言 在今天这个数据驱动的时代,我们经常会听到人们提及“知识图谱”这个词。知识图谱,作为一种结构化知识的表达方式,已经成为智能系统不可或缺的一部分,它通过连接大量的…

ModuleNotFoundError: No module named ‘mlxtend‘

from mlxtend.plotting import plot_decision_regions 报错信息: ModuleNotFoundError: No module named mlxtend Jupyter和Spyder报错原因:因为anaconda下没有这个模块,需要安装mlxtend 解决方案: 1.打开anaconda(或终端) 2. 点击路径点…

项目文章| Plant CellDAP-seq解析草莓NAC转录因子FvRIF的调控网络

DAP-seq是一种体外研究蛋白与DNA结合的技术,该技术利用麦胚乳表达体系表达目标蛋白然后与基因组DNA文库体外孵育,得到目标蛋白的结合信息。与ChIP-seq和CUT&Tag不同,DAP-seq不需要抗体,在植物中应用更为广泛。今天我们分享一篇…

Java开发面试题分享

目录 1、简述MyISAM和InnoDB的区别 2、简述Hash和B树索引的区别 3、简述MyBatis的实现逻辑 4、#{}和${}的区别 5、简述Mybatis的优缺点 6、当实体类中的属性名和表中的字段名不一样时怎么办? 7、resultType与resultMap的区别 8、如何执行批量插入 9、Mybat…

[中级]软考_软件设计_计算机组成与体系结构_12_概述及回顾

概述及回顾 总纲考情分析与分值海明校验码计算公式重点 总纲 考情分析与分值 海明校验码计算公式 2 r m r 1 2^r mr1 2rmr1 重点 数据的表示是计算题型的基础计算机组成中的CPU组成计算机组成中的存储系统,是核心重点的考察CISC与RISC及流水线执行时间的求取

YOLOv8在windows平台的C++推理

前言 YOLOv8很多人很多人很熟悉了,现在V9都已经出来了,学习没有比别人更新的快! 个人记录一下在windows平台使用C++推理的记录。 环境配置 YOLOv8的传统的环境配置,就不多说,网上很多参考教程。 需要注意的点就是,本次C++推理需要使用OPENCV的DNN模块,所以我们需要下…

每日OJ题_BFS解决FloodFill①_力扣733. 图像渲染

目录 BFS解决FloodFill简介 力扣733. 图像渲染 解析代码 BFS解决FloodFill简介 FloodeFill算法即填充算法,中文:洪水灌溉,算法原理就是从一个点开始向四周扩散,向周围可以走到的点填充颜色,直到将可扩散到的点全部填…

ElasticSearch分词检索

1. 倒排索引:表示一种数据结构,分词词条与文档id集合的隐射关系 2. 它跟关系型数据库是一种互补的关系,因为关系型数据库支持事务操作,满足ACID原则 3. 索引库的文档字段只允许新增不允许修改 1.创建索引库 put /索引库名称2.1 …

Altair® (澳汰尔)Inspire™ Render —— 强大的 3D 渲染和动画工具

Inspire Render 是一种全新 3D 渲染和动画工具,可供创新设计师、建筑师和数字艺术家以前所未有的速度快速制作精美的产品演示。 借助基于物理特性的内置高品质全局照明渲染引擎 Thea Render,可以快速创建、修改和拖放各种材质并添加照明环境&#xff0c…

风电场智能化转型基于ARM工控机的HDMI数据实时监控显示

全球能源结构不断调整的大背景下,智能电网、太阳能发电、风能发电等清洁能源领域正经历着一场由技术创新引领的深刻变革。在这场变革中,ARM架构的工控机凭借其出色的性能、低功耗及高度可定制化的特点,正在成为能源管理系统的核心组件&#x…

LeetCode-1702. 修改后的最大二进制字符串【贪心 字符串】

LeetCode-1702. 修改后的最大二进制字符串【贪心 字符串】 题目描述:解题思路一:贪心,几个规则。解题思路二:当前遇到0,去找下一个0的位置,将当前变为00。通过解题思路三:另一种贪心写法。 题目…

从电工到电气工程师:PLC编程之路

在当前的工业自动化时代,电气工程师的角色变得越来越重要,特别是在掌握了PLC(可编程逻辑控制器)编程技能后,这一技能不仅能够大幅提升生产效率,还能为企业节省大量成本。对于那些从事电工职业的人来说&…

中科数安 || 透明加密是怎么防止公司办公终端电脑文件资料外泄的?

#企业电脑数据防泄密软件# 中科数安作为一家专注于信息安全领域的公司,其提供的透明加密解决方案旨在通过以下机制来防止公司办公终端电脑上的文件资料外泄: 中科数安 || 公司办公透明加密系统 PC地址:www.weaem.com 实时加密: …