0基础入门Playwright框架,赶紧上车!

自从2023年底playwright框架火起来之后,很多小伙伴都会来咨询我们这个框架相关内容,甚至问我们什么时候出这个课程。

图片

这不,新课程终于在大家的千呼万唤中出来啦!具体的课程大纲和试听视频!

Web自动化测试项目实战(Pytest+Playwright框架)

Playwright技术:与selenium框架方案对比与优势分析
Playwright技术:安装、常见搭建问题详解
Playwright技术:运行原理。Websocket底层操作协议讲解
Playwright技术:获取页面title。刷新/关闭页面、截屏
Playwright技术:Locator对象API, Page对象API
Playwright技术:iframe进入、等待技术
Playwright技术:同步和异步API介绍
Playwright技术:单选框、多选框。复选框操作。下拉框选择
元素定位失败分析

今天给大家分享一下playwright的安装和一些常用API,为后续的学习做好准备工作。

Playwright安装

图片

API

内容管理器PlaywrightContextManager

浏览器类型BrowserType

图片

图片

浏览器类型BrowserType

图片

浏览器对象browser

图片

图片

页面对象Page

1 page = browser.new_page()
2 #源码
3 def new_page(
4     self,
5     *, 
      viewport: ViewportSize = None,
6     screen: ViewportSize = None,
7     no_viewport: bool = None,
8     ignore_https_errors: bool,
9     java_script_enabled: bool = None,
10    bypass_csp: bool = None,
11    user_agent: str = None,
12    locale: str = None,
13    timezone: str = None,
14    geolocation: Geolocation = None,
15    permissions: typing.List[str] = None,
16    extra_http_headers: typing.Optional[typing.Dict[str, str]] = None,
17    offline: bool = None,
18    http_credentials: HttpCredentials = None,
19    device_scale_factor: float = None,
20    is_mobile: bool = None,
21    has_touch: bool = None,
22    color_scheme: Literal["dark", "light", "no-preference"] = None,
23    forced_colors: Literal["active", "none"] = None,
24    reduced_motion: Literal["no-preference", "reduce"] = None,
25    accept_downloads: bool = None,
26    default_browser_type: str = None
27    proxy: ProxySettings = None,
28    record_har_path: typing.Union[str, pathlib.Path] = None,
29    record_har_omit_content: bool = None,
30    record_video typing.Union[str, pathlib.Path] = None,
31    record_video_size: ViewportSize = None,
32    storage_state: typing.Union[StorageState, str, pathlib.Path] = None,
33    base_url: str = None, )
34 
35 strict_selectors: bool = None
36 "Page":

图片

定位locator

图片

定位Element

图片

鼠标操作

图片

元素对象Locator

图片

上面就是playwright的安装和一些常用API介绍,你学会了吗?

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

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

相关文章

【JavaWeb】JSP实现数据传递与保存

目录 JSP内置对象requestrequest对象的常用方法get与post区别 问题解决表单提交时中文乱码的问题 responseresponse对象的常用方法 思考请求的转发示例 转发与重定向的区别会话session对象常用方法session与窗口的关系示例:使用session实现访问控制 思考小结思考JSP…

AI大模型日报#0409:Llama 3下周发布、特斯联20亿融资、Karpathy新项目

导读: 欢迎阅读《AI大模型日报》,内容基于Python爬虫和LLM自动生成。目前采用“文心一言”生成了每条资讯的摘要。标题: 120亿Stable LM 2上线即开源!2万亿token训练,碾压Llama 2 70B 摘要: Stable LM 2 12B参数版本发布&#x…

第一次在Vue里使用Swiper插件轮播先看这里,报错!!!(不同swiper在页面引入时方式不同,步步扫雷ing)

现在用新插件前有了个概念,一定要看它官方文档,因为不你项目版本与你想用的插件版本间是有规定的,不应该直接看别人已经实现就跟着哐哐下载然后不停报错。。。 比如Swiper版本问题的大小写问题: 3.x 版本的 ---- 引入模块时使用小…

爬虫 selenium

爬虫 selenium 【一】介绍 【1】说明 Selenium是一款广泛应用于Web应用程序测试的自动化测试框架 它可以模拟用户再浏览器上的行为对Web应用进行自动化测试 主要作用: 浏览器控制:启动、切换、关闭不同浏览器元素定位于操作:通过CSS选择器…

C++笔记(函数重载)

目录 引入: 定义: 易错案例: 引入: 对于实现相似功能的函数,在命名时,我们常会出现命名重复的问题。对于C语言,编译器遇到这种命名重复的情况,会进行报错。而我们的C为了更方便程…

mineadmin 设置时区

由于不同环境下,会造成时区不一致问题 在/bin/hyperf.php 文件里,设置 date_default_timezone_set(Asia/Shanghai);

【AIGC】训练数据入库(Milvus)

之前的文章有写如何获取数据、如何补充数据,也有说如何对数据进行清洗、如何使用结构化数据进行训练。但好像没有说如何将训练数据“入库”。这里说的入库不是指 MySQL 数据库,而是指向量检索库 Milvus。 众所周知,人工智能多用向量数据进行…

Kubernetes(k8s)监控与报警(qq邮箱+钉钉):Prometheus + Grafana + Alertmanager(超详细)

Kubernetes(k8s)监控与报警(qq邮箱钉钉):Prometheus Grafana Alertmanager(超详细) 1、部署环境2、基本概念简介2.1、Prometheus简介2.2、Grafana简介2.3、Alertmanager简介2.4、Prometheus …

【leetcode】动态规划::前缀和(二)

标题:【leetcode】前缀和(二) 水墨不写bug 正文开始: (一) 和为K的子数组 给你一个整数数组 nums 和一个整数 k ,请你统计并返回 该数组中和为 k 的子数组的个数 。 子数组是数组中元素的连续…

C#开发 之 解决win11缩放导致的字体模糊问题

现在我们的笔记本电脑分辨率很高,基本上能达到1920*1080以上,目前普遍使用的显示器都已经达到了2K到4K的级别。 但是因为我们的笔记本的屏幕小,在非常高的分辨率下,一切看着都很小,尤其是文字,根本看不清&…

【Linux基础IO】

【Linux基础IO】 C文件接口回顾test.c 写文件test.c读文件> 和 >> 理解文件stdin & stdout & stderr标准输入(stdin)标准输出(stdout)标准错误输出(stderr) 系统文件I/O接口介绍openpathn…

什么是redis? 如何在SpringBoot中集成和操作redis?

喜欢就点击上方关注我们吧! 本篇将带你快速了解什么是redis,以及学会如何在SpringBoot工程下集成和操作redis数据库。 一、概述 1、定义 Redis是一个基于内存的key-value 结构数据库。 1)特点: 1、基于内存存储,读写性…

docker pull镜像的时候指定arm平台

指定arm平台 x86平台下载arm平台的镜像包 以mysql镜像为例 docker pull --platform linux/arm64 mysqldocker images查看镜像信息 要查看Docker镜像的信息,可以使用docker inspect命令。这个命令会返回镜像的详细信息,包括其元数据和配置。 docker i…

Canvas拖动图片效果

效果预览 代码 <!DOCTYPE html> <html><head><meta charset"utf-8" /><title>mouse event</title></head><body><div><canvasid"cs"width"800"height"400"style"bord…

doss攻击为什么是无解的?

这个让Google、亚马逊等实力巨头公司也无法避免的攻击。可以这么说&#xff0c;是目前最强大、最难防御的攻击之一&#xff0c;属于世界级难题&#xff0c;并且没有解决办法。 Doss攻击的原理不复杂&#xff0c;就是利用大量肉鸡仿照真实用户行为&#xff0c;使目标服务器资源…

CSS导读 (复合选择器 下)

&#xff08;大家好&#xff0c;今天我们将继续来学习CSS的相关知识&#xff0c;大家可以在评论区进行互动答疑哦~加油&#xff01;&#x1f495;&#xff09; 目录 2.5 伪类选择器 2.6 链接伪类选择器 2.6.1 链接伪类注意事项 2.6.2 链接伪类选择器实际开发中的写法 2.7 …

每日一题 第八十九期 洛谷 [NOIP2017 提高组] 奶酪

[NOIP2017 提高组] 奶酪 题目背景 NOIP2017 提高组 D2T1 题目描述 现有一块大奶酪&#xff0c;它的高度为 h h h&#xff0c;它的长度和宽度我们可以认为是无限大的&#xff0c;奶酪中间有许多半径相同的球形空洞。我们可以在这块奶酪中建立空间坐标系&#xff0c;在坐标系…

Redis-缓存击穿-逻辑过期

Redis-缓存击穿-逻辑过期实现 缓存击穿&#xff1a;也称热点key问题&#xff0c;大量访问一个key&#xff0c;而这个key恰巧到期了&#xff0c;导致大量的请求访问数据库。增大数据库的负担。为了解决这个问题可以采用互斥锁或逻辑过期的方式解决。本章采用逻辑过期的方式解决…

Golang笔记(下)

Golang学习笔记&#xff08;下&#xff09; 前篇&#xff1a;Golang学习笔记(上) 十四、错误处理 14.1使用error类型 func New(text string) error例子&#xff1a; package mainimport ("errors" // 导入errors包"fmt" )func main() {var number, divi…

【数据结构】树与二叉树遍历算法的应用(求叶子节点个数、求树高、复制二叉树、创建二叉树、二叉树存放表达式、交换二叉树每个结点的左右孩子)

目录 求叶子节点个数、求树高、复制二叉树、创建二叉树、二叉树存放表达式、交换二叉树每个结点的左右孩子应用一&#xff1a;统计二叉树中叶子结点个数的算法写法一&#xff1a;使用静态变量写法二&#xff1a;传入 count 作为参数写法三&#xff1a;不使用额外变量 应用二&am…