playwright

PlayWright(九)

playwright我们已经可以进行简单的操作了,今天我来讲下上传文件这个操作的用法 1、上传文件 page.set_input_files(selector,files) selector表示要我们定位的元素 fils表示我们要上传的文件地址 我们来看下上传文件的源代码: <input type= ......
PlayWright

《最新出炉》系列初窥篇-Python+Playwright自动化测试-3-离线搭建playwright环境

1.简介 有些小伙伴或者童鞋们私信留言说自己是在公司局域网办公,或者公司为了安全对网络管控比较严格(尤其是一些大的国企、央企),总之就是一句话无法连到外网去在线下载,宏哥刚看到留言时觉得这问题还留言问啊,你找个有网的电脑下载好安装包然后安装就可以用了。(第一种情况及解决办法:带要搭建环境的电脑到有网 ......
Playwright playwright 环境 Python

PlayWright(八)

在UI自动化中,会有点击一个页面,出现一个新页面的情况,这时候我们需要获取浏览器上下文产生的新页面 1、在playwright中我们怎么切换页面 具体实现步骤: with context.expect_page() as new_page_info: page.click('打开新链接') new_ ......
PlayWright

Playwright运行报错的解决

### 未安装浏览器报错 ``` playwright._impl._api_types.Error: Executable doesn't exist at /home/deploy/.cache/ms-playwright/firefox-1403/firefox/firefox ╔══════ ......
Playwright

playwright

``` wget https://go.dev/dl/go1.20.4.linux-amd64.tar.gz tar -xzvf go1.20.4.linux-amd64.tar.gz -C /usr/local/ vim ~/.bashrc export GOPATH=/root/gopath e ......
playwright

Playwright 和 Selenium 的区别是什么?

最近有不少同学问到 Playwright 和 Selenium 的区别是什么? 有同学可能之前学过 selenium 了,再学一个 playwright 感觉有些多余,可能之前有项目已经是 selenium 写的了,换成 playwright 需要时间成本,并且可能有未知风险。 也有同学之前可能没学... ......
Playwright Selenium

PlayWright(七)

今天,我们讲下playwright的下拉框怎么处理,在selenium中使用选择框比较复杂,但是在playwright中真的炒鸡方便 1、什么是选择框 <select id="xz"> <option value="bj">北京</option> <option value="sh">上海</opt ......
PlayWright

PlayWright(六)

今天我们来讲下文本输入这个操作 上文中我们已经可以定位元素了,并且还学习了点击操作,但有些是需要我们输入文本信息的,我们来学习下playwright的文本输入 1、文本输入 page.fill(selector,value) selector表示要我们定位的元素 value表示我们要输入的内容 例子 ......
PlayWright

PlayWright(五)

上文我们已经掌握好怎么启动playwright了,我们就可以开启playwright的正式学习之路了? 首先得认识元素定位,元素定位是最基础也是最重要的,我们连元素都定位不到,怎么做相关的操作呢? selenium的八大元素定位: selenium中各定位方式 对应的Python方法 id find ......
PlayWright

nodejs版playwright

await this._page.waitForLoadState('networkidle'); await this._page.waitForLoadState('load') await this._page.waitForLoadState('domcontentloaded') awai ......
playwright nodejs

《最新出炉》系列初窥篇-Python+Playwright自动化测试-2-playwright的API及其他知识

1.简介 上一篇宏哥已经将Python+Playwright的环境搭建好了,而且也简单的演示了一下三款浏览器的启动和关闭,是不是很简单啊。今天主要是把一篇的中的代码进行一次详细的注释,然后说一下playwright的API和其他相关知识点。那么首先将上一篇中的代码进行一下详细的解释。 2.代码解释 ......

PlayWright(四)

我们来看下异步运行 PlayWright 1、异步的概念 异步举例来讲下: 小明在家需要完成如下事情: 电饭锅煮饭大约30分钟 洗衣机洗衣服大约40分钟 写作业大约50分钟 在同步情况下:小明需要电饭锅处等待30分钟、洗衣机处等待40分钟、写作业50分钟,总计花费时间120分钟。 在异步情况下:小明 ......
PlayWright

PlayWright(三)

1、异步概念 上文中,我们使用同步运行方式操作了playwright,那同步和异步究竟什么意思呢? 同步:发送一个请求,等待返回,然后再发送下一个请求 异步:发送一个请求,不等待返回,随时可以再发送下一个请求 通俗来说:同步只能按执行顺序执行,异步可以不按顺序执行 在讲异步之前,我们再来讲另一种运行 ......
PlayWright

《最新出炉》系列初窥篇-Python+Playwright自动化测试-1-环境准备与搭建

1.简介 有很多人私信留言宏哥问能不能介绍一下Playwright这款自动化神器的相关知识,现在网上的资料太少了。其实在各大博客和公众号也看到过其相关的介绍和讲解。要不就是不全面、不系统,要不就是系统全面但是人家是收费的。当然了宏哥接下来也可能介绍的不全面或者不系统,能力有限望大家理解。 2.Pla ......
Playwright 环境 Python

python+playwright 学习-66 highlight 调试定位时高亮显示元素

# 前言 highlight() 方法是通过高亮显示元素,在调试中有很大优势,可以清楚看到定位的元素所在的位置 # 遇到的问题 使用示例:点百度页面,定位文本元素“新闻”后点击 ![](https://img2023.cnblogs.com/blog/1070438/202305/1070438-2 ......
playwright highlight 元素 python 66

PlayWright(二)

上篇我们已经安装好了playwright和各个浏览器,那么现在我们直接开始吧 1、怎么使用palywright? 我们需要先导入sync_playwright,然后用start启动,stop关闭 直接举例 问题:使用谷歌浏览器打开百度网页 1 from playwright.sync_api imp ......
PlayWright

gitlab ci 用 cypress/playwright 做测试并展示结果至 mr

# 前言 看了一下官方的教程好像都没有讲怎么将测试结果展示出来,只是给出测试的 ci 脚本,但根据 gitlab 官方的文档是有测试报告的展示的,所以这里给出一个基于 junit 测试报告的展示。 # 前期准备 + 安装 cypress/playwright 在项目中 # `.gitlab-ci.y ......
playwright cypress 结果 gitlab ci

Python 自动化爬虫利器 Playwright

# Python 自动化爬虫利器 Playwright Python Playwright 是一个基于 Node.js 的自动化测试库,它支持多种浏览器(Chrome、Firefox、Safari、Edge等),并提供了一些方便的 API 来模拟用户在浏览器中的行为。本篇将介绍 Python Pla ......
爬虫 利器 Playwright Python

python+playwright 学习-62 日历控件操作

# 前言 遇到输入框是弹出日历控件,选一个日期的这种场景,可以直接在输入框输入内容。如果输入框是readonly的时候,可以用js改变输入框的属性 # 日历控件 如果输入框是日历控件 ![](https://img2023.cnblogs.com/blog/1070438/202305/107043 ......
控件 playwright 日历 python 62

python+playwright 学习-63 table表格定位与数据获取

# 前言 定位table 表格内容以及获取table 表格数据。 # table 表格场景 网页table 表格示例 ![](https://img2023.cnblogs.com/blog/1070438/202305/1070438-20230518220832042-1514498488.pn ......
playwright 表格 数据 python table

python+playwright 学习-64 非无痕模式启动浏览器launch_persistent_context

# 前言 最近有一些爬虫用户在使用 playwright 的时候,提到 playwright 默认是用无痕模式打开的浏览器,很多网站会有反爬机制,使用无痕模式打开的时候功能无法正常使用。 playwright 提供了 launch_persistent_context 启动浏览器的方法,可以非无痕模 ......

PlayWright(一)

1、如何安装? 安装playwright只需要一条命令,就是pip安装命令,命令如下: pip install playwright 注:playwright需要Python3.7或更新的版本 2、然后安装所需要的浏览器,和selenium不同,我们不再是安装对应的浏览器驱动,所以不需要再头疼浏览器 ......
PlayWright

python+playwright 学习-64 多线程同时打开多个浏览器不同账号操作

# 前言 最近用小伙伴提到多线程同时操作多个浏览器,每个浏览器用不同账号登录的需求。 # 多线程操作 以下是2个账号同时打开2个浏览器操作的示例 ``` from playwright.sync_api import sync_playwright from threading import Thr ......
线程 playwright 账号 多个 浏览器

docker内使用playwright

一、镜像使用 docker pull python:3.9-buster 二、安装playwright 镜像内执行如下指令: 1.安装playwright pip3 install playwright==1.31.1 -i https://pypi.tuna.tsinghua.edu.cn/sim ......
playwright docker

playwright中常用的几种方法(同步模式下)

playwright中常用的几种方法(同步模式下) 简单介绍 在 Python 环境下,Playwright 提供了比较完善的同步 API,开发者可以根据自己的喜好来选择使用异步 API 还是同步 API。以下是介绍 Playwright 常用同步方法的介绍。 具体方法 1. page.goto(u ......
playwright 常用 模式 方法

playwright中定位元素的方法

playwright中定位元素的方法 1. page.$(selector) 该方法接受一个 CSS 选择器作为参数,并返回与选择器匹配的第一个元素。如果不存在匹配的元素,则返回 null。该方法常常用于选取指定 ID 或 class 的元素。 const button = await page.$ ......
playwright 元素 方法

python+playwright 学习-60 在打开的多个标签页窗口灵活切换

前言 当页面打开了多个标签页后,如何切换到自己需要的标签页上呢? 使用场景 以百度首页为例,当打开多个标签页后, 如何切换到自己想要的页面上操作。 通过context.pages 可以获取到所有的page对象,每一个page对象就代表一个标签页实例 from playwright.sync_api ......
playwright 多个 标签 python 60

使用爬虫利器 Playwright,轻松爬取抖查查数据

使用爬虫利器 Playwright,轻松爬取抖查查数据 我们先分析登录的接口,其中 url 有一些非业务参数:ts、he、sign、secret。 然后根据这些参数作为关键词,定位到相关的 js 代码。 最后,逐步进行代码的跟踪,发现大部分的代码被混淆加密了。 花费了大半天,来还原这些混淆加密的代码 ......
爬虫 利器 Playwright 数据

Playwright复杂定位

select下拉框 先定位到下拉框,然后通过select_option选择值 # 下拉框通过值单选 page.get_by_label('a').select_option('x') # 下拉框通过label单选 page.get_by_label('a').select_option(label= ......
Playwright

Playwright基本定位

css定位 如在css定位为#kw的位置输入内容,如下写法均可: page.locator('#kw').fill("输入的内容") page.locator('css=#kw').fill("输入的内容") page.fill('#kw','输入的内容') #可以不写css=或xpath=,会自动 ......
Playwright