前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PlayWright(四)- 深入异步

PlayWright(四)- 深入异步

作者头像
似小陈吖
发布2023-10-17 09:58:02
4620
发布2023-10-17 09:58:02
举报
文章被收录于专栏:测试那些事

我们来看下异步运行 PlayWright

1、异步的概念

异步举例来讲下:

小明在家需要完成如下事情:

  1. 电饭锅煮饭大约30分钟
  2. 洗衣机洗衣服大约40分钟
  3. 写作业大约50分钟

在同步情况下:小明需要电饭锅处等待30分钟、洗衣机处等待40分钟、写作业50分钟,总计花费时间120分钟。 在异步情况下:小明需要电饭锅处理并启动花费10分钟、洗衣机处理并启动花费10分钟,写作业花费50分钟,总计花费时间70分钟。

同步需要按照顺序执行,等结束之后再执行下一个

异步可以上件事没结束就处理另一件事

2、asyncio异步协程

asyncio是python用来处理并发的一个包,我们的异步运行需要这个包

先导入

代码语言:javascript
复制
import asynico

并且在python3.5后我们都用async/await来实现协程

异步函数

代码语言:javascript
复制
async def haha():  # async前缀异步函数
    return 1

我们直接调用异步函数haha()会报错

我们可以使用异步调用

代码语言:javascript
复制
import asyncio

async def haha():  # async前缀异步函数
    return 1
asyncio.run(haha())

使用异步调用就不会报错了

那await怎么使用呢

可以在操作前放入前缀 await,意思可以挂起自身的协程,然后等待这步操作完成,然后接着运行

3、异步运行playwright

代码语言:javascript
复制
import asyncio
from playwright.async_api import async_playwright


async def main():
    async with async_playwright() as p:
        browser = await p.chromium.launch()
        page = await browser.new_page()
        await page.goto("https://www.baidu.com/")
        print(await page.title())
        await browser.close()

# 调用函数
asyncio.run(main())
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-05-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、异步的概念
  • 2、asyncio异步协程
  • 3、异步运行playwright
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档