首页 > 其他分享 >PlayWright(三)

PlayWright(三)

时间:2023-05-29 16:47:39浏览次数:60  
标签:异步 playwright sync PlayWright file page browser

1、异步概念   上文中,我们使用同步运行方式操作了playwright,那同步和异步究竟什么意思呢?   同步:发送一个请求,等待返回,然后再发送下一个请求 异步:发送一个请求,不等待返回,随时可以再发送下一个请求   通俗来说:同步只能按执行顺序执行,异步可以不按顺序执行   在讲异步之前,我们再来讲另一种运行方式,之前我们使用start,stop来运行,还有一种with方式   2、with语句是什么?   官方解释很复杂,我们不需要看,只需知道有些任务,我们需要事先设置,事后清理,这种场景我们可以使用with语句,可以让代码更简练,并且语句出现异常时,清理工作也更简单   看一个简单例子:  

1 file = open('1.txt')    # 打开1.txt的文件
2 data = file.read()      # 读取打开的文件到data中
3 file.close()            # 关闭文件

  

这是一个处理的文件的简单操作,这个操作可能会有两个问题: 1、忘记关闭文件 2、语句有异常,未做处理   我们用with语句  
with open('1.txt') as file:
    data = file.read()
  代码简洁还会自动关闭   3、with启动playwright
with sync_playwright() as playwright:  # 省略了start启动
    browser = playwright.chromium.launch(headless=False, slow_mo=5000)  # 设置了每步等待时间为3s
    page = browser.new_page()  # 打开一个页面
    page.goto('https://www.baidu.com/')  # 打开百度地址
    browser.close()  # 省略了关闭playwright对象    

  

  在看下之前用start和stop的启动方式
from playwright.sync_api import sync_playwright         # 先导包
playwright = sync_playwright().start()                  # 创建playwright对象
browser = playwright.chromium.launch(headless=False)    # 启动谷歌浏览器赋值给对象
page = browser.new_page()              # 打开一个页面
page.goto('https://www.baidu.com/')    # 打开百度地址
browser.close()                        # 关闭浏览器对象
playwright.stop()                      # 关闭playwright对象释放资源

 

清晰明了,下节我们看异步运行  

标签:异步,playwright,sync,PlayWright,file,page,browser
From: https://www.cnblogs.com/nuomituan/p/17440892.html

相关文章

  • 《最新出炉》系列初窥篇-Python+Playwright自动化测试-1-环境准备与搭建
    1.简介有很多人私信留言宏哥问能不能介绍一下Playwright这款自动化神器的相关知识,现在网上的资料太少了。其实在各大博客和公众号也看到过其相关的介绍和讲解。要不就是不全面、不系统,要不就是系统全面但是人家是收费的。当然了宏哥接下来也可能介绍的不全面或者不系统,能力有限望......
  • python+playwright 学习-66 highlight 调试定位时高亮显示元素
    前言highlight()方法是通过高亮显示元素,在调试中有很大优势,可以清楚看到定位的元素所在的位置遇到的问题使用示例:点百度页面,定位文本元素“新闻”后点击fromplaywright.sync_apiimportsync_playwright#上海悠悠wx:283340479#blog:https://www.cnblogs.com/yoyoket......
  • 微软Playwright开源自动化框架初探-第一段代码和对应含义(首页截图)
    昨天我们已经在windows/mac上配置好了playwrigt框架,今天来写代码看看该框架怎么运行。 在写第一段代码之前,补充下上次没有讲完playwright框架的优点。跨浏览器、跨平台、跨语言、可测试的移动网络。适用于Android和Mobilesafiri的GoogleChrome原生移动仿真。相同的渲染引擎......
  • 微软Playwright开源自动化框架初探-安装和调试(java版)
    最近在研究部门的UI自动化框架(java+selenium+testNG+openCV等),发现在调试脚本时,需要先下载谷歌浏览器。无头/有头模式还需要代码区分。还有一个体验问题,程序启动太慢,从运行到浏览器启动,差不多需要30s左右,等得有点着急。  在知乎/CSDN中找到多篇文章推荐自动化测试利器-Playwrigh......
  • PlayWright(二)
     上篇我们已经安装好了playwright和各个浏览器,那么现在我们直接开始吧 1、怎么使用palywright? 我们需要先导入sync_playwright,然后用start启动,stop关闭 直接举例 使用谷歌浏览器打开百度网页 fromplaywright.sync_apiimportsync_playwright#先导......
  • Python 自动化爬虫利器 Playwright
    Python自动化爬虫利器PlaywrightPythonPlaywright是一个基于Node.js的自动化测试库,它支持多种浏览器(Chrome、Firefox、Safari、Edge等),并提供了一些方便的API来模拟用户在浏览器中的行为。本篇将介绍PythonPlaywright库的基本使用教程。安装首先需要安装PythonPlay......
  • python+playwright 学习-64 非无痕模式启动浏览器launch_persistent_context
    前言最近有一些爬虫用户在使用playwright的时候,提到playwright默认是用无痕模式打开的浏览器,很多网站会有反爬机制,使用无痕模式打开的时候功能无法正常使用。playwright提供了launch_persistent_context启动浏览器的方法,可以非无痕模式启动浏览器。无痕模式启动浏览器......
  • python+playwright 学习-62 日历控件操作
    前言遇到输入框是弹出日历控件,选一个日期的这种场景,可以直接在输入框输入内容。如果输入框是readonly的时候,可以用js改变输入框的属性日历控件如果输入框是日历控件先看能不能直接输入一个日期,如果能直接输入的情况,就不用点开了代码示例#上海悠悠wx:283340479#blog:ht......
  • python+playwright 学习-65多线程同时打开多个浏览器不同账号操作
    前言最近用小伙伴提到多线程同时操作多个浏览器,每个浏览器用不同账号登录的需求。多线程操作以下是2个账号同时打开2个浏览器操作的示例fromplaywright.sync_apiimportsync_playwrightfromthreadingimportThreaddefdo_some_thing(username,password):playwri......
  • PlayWright(一)
    1、如何安装?安装playwright只需要一条命令,就是pip安装命令,命令如下:pipinstallplaywright注:playwright需要Python3.7或更新的版本 2、然后安装所需要的浏览器,和selenium不同,我们不再是安装对应的浏览器驱动,所以不需要再头疼浏览器驱动版本的问题了。安装命令如下playw......