首页 > 其他分享 >WebUI自动化框架-playwright

WebUI自动化框架-playwright

时间:2024-09-12 15:14:04浏览次数:1  
标签:playwright 浏览器 await WebUI 自动化 async page browser

(持续更新)

一.环境准备

安装playwright:playwright是基于python3.7开发的第三方包,所以需要使用的python版本是3.7及其以上的 pip install playwright

playWright默认是无头模式打开浏览器

安装需要的浏览器:chromium、firefox、webkit playwright install,这一个命令可以一次安装三个浏览器

playwright操作浏览器使用两种方式:sync_playwright(同步)和async_palywright(异步)

asyncio是一个异步库,使用这个库操作,需要在函数申明时加上async关键字,并且在每行代码的前面加上await 关键字
函数调用时需要使用asyncio库里面的.run()函数来执行函数

同步操作:

      `from playwright.sync_api import sync_playwright`
      `# 使用with方式启动playwright`
     `with sync_playwright() as p:`
                   `# 非无头模式启动chromium浏览器`
                   `browser = p.chromium.launch(headless=False)`
                   `# 在浏览器打开一个新页面`
                   `page = browser.new_page()`
                   `# 使用页面打开网址`
                   `page.goto("http://www.baidu.com")`
                   `# 打印网页标题`
                   `print(page.title())`
                   `browser.close()`

异步操作:

       `import asyncio`
       `from playwright.async_api import async_playwright`
       `async def main():`
            `async with async_playwright() as p:`
                `browser = await p.chromium.launch(headless=False)`
                `page = await browser.new_page()`
                `await page.goto("http://www.baidu.com")`
                `print(await page.title())`
                `await browser.close()`

二.playwright录制生成脚本

使用命令行playwright codegen 目标网址,然后在浏览器操作时,playwright就会自动生成代码

可以将生成的函数直接copy到pycharm工具

断点调试功能: page.pause()

playwright录制脚本保留身份认证的状态:

playwright在录制脚本时,加上--save-storage可以保存登录之后的cookie值
1.playwright codegen --save-storage=auth.json可以将登录后的cookie保存到auth.json中
2.在下次登录时,可以直接引用本地的cookie,不需要再进行登录
使用playwright open --load-stroage=auth.json 目标网址

标签:playwright,浏览器,await,WebUI,自动化,async,page,browser
From: https://www.cnblogs.com/tyl-bok/p/18410220

相关文章

  • hncloud探索自动化与游戏化:提升团队云支出管理的全新方法
    在现代科技驱动的商业环境中,云计算已经成为企业运营的核心。随着云服务的普及,如何有效管理和优化云支出成为企业面临的一大挑战。传统的手工管理方法不仅耗时耗力,还容易出现错误。为了应对这一问题,自动化和游戏化的云支出管理方法应运而生。一、自动化云支出管理的优势实时监控和......
  • 【数据分析】利用Python+AI+工作流实现自动化数据分析-全流程讲解
    文章目录一、为什么要用AI进行自动化分析?二、AI自动化分析场景三、编写Python脚本示例1、用flask实现让AI分析数据内容使用说明:示例2、用定时任务的方式,定时处理AI数据......
  • 【私有云场景案例分享③】批量回归测试自动化流程
    此文章来源于项目官方公众号:“AirtestProject”版权声明:允许转载,但转载必须保留原链接;请勿用作商业或者非法用途一、前言在软件开发生命周期中,回归测试是必不可少的环节。它确保新功能的引入不会破坏现有功能。然而,手动进行这些测试不仅效率低,且容易疏漏测试点。如果通过Devi......
  • 影刀RPA与WPS文档协同办公:实现高效自动化处理的策略与实践
    摘要随着数字化转型的深入,企业对于办公自动化的需求日益增长。影刀RPA(RoboticProcessAutomation)与WPS文档的协同办公提供了一种高效、自动化的解决方案。本文旨在探讨影刀RPA与WPS文档如何配合使用,以实现工作流程的自动化,提高办公效率,并为企业带来实际效益。引言影刀R......
  • springboot+vue医院门诊管理自动化实现【程序+论文+开题】计算机毕业设计
    系统程序文件列表开题报告内容研究背景随着医疗技术的飞速发展和人口老龄化的加剧,医院门诊面临着前所未有的压力与挑战。传统的手工管理模式已难以满足日益增长的患者需求,排队时间长、信息不对称、效率低下等问题日益凸显。信息化、自动化成为提升医院门诊管理水平、优化患......
  • sqli-labs靶场自动化利用工具——第8关
    文章目录概要整体架构流程技术细节执行效果小结概要Sqli-Labs靶场对于网安专业的学生或正在学习网安的朋友来说并不陌生,或者说已经很熟悉。那有没有朋友想过自己开发一个测试脚本能实现自动化化测试sqli-labs呢?可能有些人会说不是有sqlmap,那我们又何须使用这个小脚本呢?这里......
  • Python在DevOps中的应用 - 提高自动化和效率的利器
    引言在当今快速发展的IT世界中,DevOps已成为提高软件开发和运维效率的关键方法。Python,作为一种多功能且易于学习的编程语言,在DevOps实践中扮演着越来越重要的角色。本文将深入探讨Python如何在DevOps中发挥作用,以及一些常用的Python库和工具,帮助您提高自动化程度和工作效率。作者:ht......
  • 炸裂!新版 SD WebUI Forge 出图速度更快!支持最新Flux 模型!(保姆级安装教程)
    大家是不是经常为SDWebUI卡顿、爆显存而苦恼?一启动SD电脑就开始发烫,尤其低显存用户屡屡"中招",不得不一遍遍重启。作为AI绘画的必备工具,WebUI却还有这么多"坑",着实让人不爽!......
  • 盘点一个Python自动化办公实战问题
    大家好,我是Python进阶者。一、前言前几天在Python白银交流群【上海新年人】问了一个Python自动化办公实战的问题,问题如下:大佬们,我有个难度高的问题,我有个文件夹,里面呢有一堆文件,然后我要寻找至少2个关键字相同的文件,然后提取文件中第二列中的数字,第一列名称保留,譬如图片中,只要......
  • 【运维自动化-配置平台】平台管理功能如何使用
    蓝鲸智云配置平台,以下简称配置平台配置平台里的平台管理功能是管理员的一些操作,比如一些全局纬度的设置1、全局配置-业务通用业务快照名称:通常不需要修改,保持平台搭建好默认业务(蓝鲸)即可拓扑最大可见层级:可根据实际业务场景自定义调整,需要注意的是,这个是全局的调整,针对每个......