上篇我们已经安装好了playwright和各个浏览器,那么现在我们直接开始吧
 
1、怎么使用palywright?
 
我们需要先导入sync_playwright,然后用start启动,stop关闭
 
直接举例
 
问题:使用谷歌浏览器打开百度网页
 
 1 from playwright.sync_api import sync_playwright         # 先导包
2
3 playwright = sync_playwright().start() # 创建playwright对象
4
5 browser = playwright.chromium.launch(headless=False) # 启动谷歌浏览器赋值给对象
6
7 page = browser.new_page() # 打开一个页面
8 page.goto('https://www.baidu.com/') # 打开百度地址
9
10 browser.close() # 关闭浏览器对象
11 playwright.stop() # 关闭playwright对象释放资源
上述是跟selenium同样的,都属于同步运行,playwright有2种运行方式:同步和异步
 
与selenium不同,我们不需要在使用浏览器驱动,直接创建playwright对象,然后启动对应浏览器
playwright默认是无头模式启动,意思我们默认看不到浏览器的界面,想要查看浏览器界面,直接headless = False
 
2、等待机制
 
与selenium不同,在playwright中不需要在使用time.sleep(),来设置等待时间
 
通过slow_mo (单位是毫秒)减少每个动作的等待时间,作用范围是全局,意思是操作元素一个动作就等待时间完毕后然后接着操作下一个动作,设置这个方便我们调试
 
这个在启动浏览器的时候,直接设置slow_mo = 3000
 
 
playwright的等待还有很多,后续我们在详细讲解
 
作业:   打开微博,设置等每步等待5s
 

PlayWright(二)的更多相关文章

  1. 微软出品自动化神器【Playwright+Java】系列(十二)测试框架的设计与开发

    一.前言 大家好,我是六哥! 又有好长一段时间没更文了,不是我懒,而是确实在更文上,没有以前积极了,这里是该自我检讨的. 其实不是我不积极,而是相对更文学习来说,优先级不是最高. 对我而言,目前最重要 ...

  2. 探索微软开源Python自动化神器Playwright

    相信玩过爬虫的朋友都知道selenium,一个自动化测试的神器工具.写个Python自动化脚本解放双手基本上是常规的操作了,爬虫爬不了的,就用自动化测试凑一凑. 虽然selenium有完备的文档,但也 ...

  3. 微软出品自动化神器Playwright,不用写一行代码(Playwright+Java)系列(一) 之 环境搭建及脚本录制

    一.前言 半年前,偶然在视频号刷到某机构正在直播讲解Playwright框架的使用,就看了一会,感觉还不错,便被种草,就想着自己有时间也可以自己学一下,这一想着就半年多过去了. 读到这,你可能就去百度 ...

  4. playwright 实现高亮、is_visible 等源码修改

    一. 前言 高亮是什么? 在ui自动化中可以执行js来让某个页面元素高亮,比如背景颜色.字体颜色.边框颜色等发生改变,以此更加方便执行的时候点了哪一步操作.(如果有不清楚怎么实现的可以转到我的介绍se ...

  5. 微软出品自动化神器【Playwright+Java】系列(十)元素定位详解

    一.写在前面 又有很久没更文了,真的是被催婚搞的整个人情绪特别不好,如果硬要形容的话,那就是没法跟人正常沟通,一点就着,做什么都没耐心,看什么都烦,简直没救了... 也是偶然发现的,自己居然没写关于P ...

  6. 实例讲解Playwright(一)

    实例讲解Playwright(一) 网址 说明 https://playwright.dev/ 官网首页 https://playwright.dev/python/docs/intro Python ...

  7. 微软出品的UI自动化测试工具Playwright(三)

    微软出品的UI自动化测试工具Playwright(三) 网址 说明 https://playwright.dev/ 官网首页 https://playwright.dev/python/docs/in ...

  8. 【小程序分享篇 二 】web在线踢人小程序,维持用户只能在一个台电脑持登录状态

    最近离职了, 突然记起来还一个小功能没做, 想想也挺简单,留下代码和思路给同事做个参考. 换工作心里挺忐忑, 对未来也充满了憧憬与担忧.(虽然已是老人, 换了N次工作了,但每次心里都和忐忑). 写写代 ...

  9. 前端开发中SEO的十二条总结

    一. 合理使用title, description, keywords二. 合理使用h1 - h6, h1标签的权重很高, 注意使用频率三. 列表代码使用ul, 重要文字使用strong标签四. 图片 ...

  10. 【疯狂造轮子-iOS】JSON转Model系列之二

    [疯狂造轮子-iOS]JSON转Model系列之二 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 上一篇<[疯狂造轮子-iOS]JSON转Model系列之一> ...

随机推荐

  1. 4.错误代码C1083

    有的时候在VS中遇到的error C1083: 无法打开**: " * .*": No such file or directory的错误,这里总结了我遇到过的情况: 错误 C10 ...

  2. ACM-NEFU15届校赛-大一组

    A. 三角形面积 #include <bits/stdc++.h> using namespace std; int main() { double a,b,c; double ans,p ...

  3. abc285G

    ABC 285 G - Tatami Solution 网络流 网格图是一个天然二分图, 可以按 横纵坐标之和 的奇偶性将相邻两格分属于左部和右部. 记'?' 或 '2' 的格子为待匹配点, 记横纵坐 ...

  4. React+Antd在使用form表单提交DatePicker日期框的时候会出现少八小时的情况

    在使用antd做form表单提交的时候,突然发现了一个很有意思的bug.就是在使用datepicker组件日期框的时候会出现提交后少一天的问题 我在网上搜索了许多解决办法,也是困扰了我一天的时间,下面 ...

  5. RabbitMQ详解(上)

    一:MQ的相关概念 MQ(message queue),从字面意思上看,本质是个队列,FIFO 先入先出,只不过队列中存放的内容是message 而已,还是一种跨进程的通信机制,用于上下游传递消息.在 ...

  6. 即时通讯系统为什么选择GaussDB(for Redis)?

    摘要:如果你需要一款稳定可靠的高性能企业级KV数据库,不妨试试GaussDB(for Redis). 每当网络上爆出热点新闻,混迹于各个社交媒体的小伙伴们全都开启了讨论模式.一条消息的产生是如何在群聊 ...

  7. ROS用hector创建地图

    ROS用hector创建地图 连接小车 ssh clbrobot@clbrobot 激活树莓派 roslaunch clbrobot bringup.launch 打开hector_slam 重新开终 ...

  8. Object-Advanced笔记

    JavaScript对象进阶 数据劫持 1. 概念 一旦访问或者修改对象的属性时 拦截这个行为(访问/修改) 并对其添加除这个行为外的操作 最后返回结果 2. 实现 2.1 getter和setter ...

  9. Django笔记三十之log日志记录详解

    本文首发于公众号:Hunter后端 原文链接:Django笔记三十之log日志的记录详解 这一节介绍在 Django 系统里使用 logging 记录日志 以下是一个简单的 logging 模块示例, ...

  10. 一文讲透 RocketMQ 消费者是如何负载均衡的

    RocketMQ 支持两种消息模式:集群消费( Clustering )和广播消费( Broadcasting ). 集群消费:同一 Topic 下的一条消息只会被同一消费组中的一个消费者消费.也就是 ...