【python自动化】Playwright基础教程——Keyboard键盘

这篇具有很好参考价值的文章主要介绍了【python自动化】Playwright基础教程——Keyboard键盘。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

playwright模拟键盘操作

键盘事件提供了用于管理虚拟键盘的API,高级API是keyboard.type(),它使用的是原始字符再页面上生成对应的keydownkeypress / inputkeyup 事件。

模拟真实键盘操作进行更精细的控制可以使用keyboard.down()keyboard.up()keyboard.insert_text() 手动触发事件。

前文代码

「直接定位指定浏览器」

class Demo05:       def __init__(self):           """           使用playwright连接谷歌浏览器           :return:           """           self.playwright = sync_playwright().start()           # 连接已经打开的浏览器,找好端口           browser = self.playwright.chromium.connect_over_cdp("http://127.0.0.1:9223")           self.default_context = browser.contexts[0]           self.page = self.default_context.pages[0]   

「启动新的浏览器」

class Demo06:       def __init__(self, url):           playwright = sync_playwright().start()           browser = playwright.chromium.launch(headless=False)           context = browser.new_context()           self.page = context.new_page()           self.page.goto(url)                        if __name__ == '__main__':       mwj = Demo05(url="指定的url")       mwj.Locator_testid()   

官方示列一

这里官网提供了一个示列:(我加了非常详细的注释)

# 模拟键盘输入 Hello World!   page.keyboard.type("Hello World!")   # 模拟键盘按下 ← 建   page.keyboard.press("ArrowLeft")   # 模拟键盘按下 Shift 键   page.keyboard.down("Shift")   # 模拟键盘按下 6次 ← 键   for i in range(6):       page.keyboard.press("ArrowLeft")   # 模拟键盘释放 Shift 键   page.keyboard.up("Shift")   # 模拟键盘按下 Backspace 键   page.keyboard.press("Backspace")   # 最后呈现的整体效果就是   # 输出Hello World!选中了 World 并且删除,最后剩下 Hello!   # 大家可以自己用按键按照上面的中文操作一遍,就知道代码的意思啦。   

官方示列二

按出大写的A。

page.keyboard.press("Shift+KeyA")   # or   page.keyboard.press("Shift+A")   

官方示列三

使用键盘触发全选。

# 在windows或者linux系统使用   page.keyboard.press("Control+A")   # 在MacOS系统使用   page.keyboard.press("Meta+A")   

按下按键down

「使用方法」

keyboard.down(key)   

「key参数」

dispatch一个keydown事件。

key可以指定预期的keyboardEvent.key(https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key)值或单个字符生成的文本。

可以找到key值的超集(https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values)。

键的例子如下:

` `F1` - `F12`, `Digit0`- `Digit9`, `KeyA`- `KeyZ`, `Backquote`, `Minus`, `Equal`, `Backslash`, `Backspace`, `Tab`,   `Delete`, `Escape`, `ArrowDown`, `End`, `Enter`, `Home`, `Insert`, `PageDown`, `PageUp`, `ArrowRight`, `ArrowUp`,    `

还支持以下修改快捷方式:ShiftControlAltMetaShiftLeft

按下Shift将键入大写字母key对应的文本。

如果key是单个字符,它是区分大小写的,因此值aA将生成不同的值文本。

如果key是修饰键、ShiftMetaControlAlt,则会发送后续的按键修饰,要释放修改键,使用keyboard.up()

按键按下一次后,后续对keyboard.down()的调用将会重复设置为true。要解开key,需要使用keyboard.up()

**「注意」**修改键会影响keyboard.down。按下Shift将以大写字母输入文本。

插入文本insert_text

只是input时间,不会触发键盘的down、up事件

「使用方法」

page.keyboard.insert_text("嗨")   

按压操作press

在大多数情况下,应该使用locator.press()

可以理解为**「keyboard.down() 和 keyboard.up() 的快捷方式。」**

「使用方法」

page.keyboard.press(key)   

这里的key和down里面的可以一样,不过这个key可以是组合技。

「官方示列」

page = browser.new_page()   page.goto("https://keycode.info")   page.keyboard.press("a")   page.screenshot(path="a.png")   page.keyboard.press("ArrowLeft")   page.screenshot(path="arrow_left.png")   page.keyboard.press("Shift+O")   page.screenshot(path="o.png")   browser.close()   

官方这个网址很nice哦

输入操作type

官方推荐使用locator.fill(),这在之前的文章中有讲,这里不再赘述。

「官方示列」

page.keyboard.type("Hello") # 瞬间输入   page.keyboard.type("World", delay=100) # 模拟用户,每个字符间隔100毫秒进行输入   

需要注意的是,修饰键在这个方法里面不起作用,比如按住Shift再输字母不会输入大写字母。

释放(抬起)按键up

一般和按下按键down一起前后使用,对keyboard.down(key)进行释放。

「使用方法」

keyboard.up(key)   

「示列」

# 按下 Shift 键   keyboard.down("Shift")   # 抬起释放 Shift 键   keyboard.up("Shift")   

键盘操作测试网站

https://cps-check.com/cn/test-keyboard

---------------------------END---------------------------

题外话

python keyboard,python,自动化,计算机外设

感兴趣的小伙伴,赠送全套Python学习资料,包含面试题、简历资料等具体看下方。

👉CSDN大礼包🎁:全网最全《Python学习资料》免费赠送🆓!(安全链接,放心点击)

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

python keyboard,python,自动化,计算机外设
python keyboard,python,自动化,计算机外设

二、Python必备开发工具

工具都帮大家整理好了,安装就可直接上手!python keyboard,python,自动化,计算机外设

三、最新Python学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

python keyboard,python,自动化,计算机外设

四、Python视频合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

python keyboard,python,自动化,计算机外设

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

python keyboard,python,自动化,计算机外设

六、面试宝典

python keyboard,python,自动化,计算机外设

python keyboard,python,自动化,计算机外设

简历模板python keyboard,python,自动化,计算机外设

👉CSDN大礼包🎁:全网最全《Python学习资料》免费赠送🆓!(安全链接,放心点击)

若有侵权,请联系删除文章来源地址https://www.toymoban.com/news/detail-834522.html

到了这里,关于【python自动化】Playwright基础教程——Keyboard键盘的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

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

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

    2024年02月07日
    浏览(28)
  • 基于Python+Pytest+Playwright+BDD的UI自动化测试框架

    本框架是基于Python+Pytest+Playwright+BDD的UI自动化测试框架。 测试社区地址: https://www.gitlink.org.cn/zone/tester 入群二维码:https://www.gitlink.org.cn/floraachy/apiautotest/issues/1 对于框架任何问题,欢迎联系我! 支持通过命令行指定浏览器,选择需要运行的浏览器。 支持通过命令行指定运行

    2024年02月07日
    浏览(37)
  • 【playwright】新一代自动化测试神器playwright+python系列课程22_playwright模拟鼠标操作_悬停_右击_双击

    有些元素,只有你鼠标移动到它那个位置上,他才会展开或者显示一些内容,这时候就要用到hover()操作了。 以个人设置这个下拉菜单,来看一下hover的使用。 项目实践代码 以双击关闭弹出的流程窗口为例,看一下dblclick()使用 项目实践代码 以弹出的右键菜单为例,看一下

    2024年01月18日
    浏览(28)
  • python+playwright+pytest+allure+pom+yaml实现UI自动化测试

    https://gitee.com/giteetangll/playwright-demo Auth:登录认证保存后的认证信息 BasePage:封装playwright的基础方法 BuildInLibrary:环境变量存放文件夹,可进行用例参数关联 Common:存放公共方法抽离文件夹 Config:配置文件存放文件夹 Logs:存放断言失败的记录 Pages:存放页面对象文件 Test

    2024年02月11日
    浏览(43)
  • 《最新出炉》系列初窥篇-Python+Playwright自动化测试-1-环境准备与搭建

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

    2024年02月06日
    浏览(56)
  • Python-playwright:一款强大的UI自动化工具、新兴爬虫利器

    点击名片关注 阿尘blog,一起学习,一起成长 本文主要分享由微软开发的实现Web UI自动化测试工具Playwright库,相比于之前学习过selenium库,playwright对于编写自动化代码绝对是更轻松了,因为它支持脚本录制,如果只求简单点可以不用写一行代码就能够实现自动化,而且play

    2024年02月04日
    浏览(39)
  • 《最新出炉》系列初窥篇-Python+Playwright自动化测试-18-处理鼠标拖拽-上篇

    1.简介 本文主要介绍两个在测试过程中可能会用到的功能:在selenium中宏哥介绍了Actions类中的拖拽操作和Actions类中的划取字段操作。例如:需要在一堆log字符中随机划取一段文字,然后右键选择摘取功能。playwright同样可以实现元素的拖拽和释放的操作。 2.拖拽操作 鼠标拖拽

    2024年02月21日
    浏览(28)
  • 《最新出炉》系列初窥篇-Python+Playwright自动化测试-20-处理鼠标拖拽-下篇

    1.简介 上一篇中,宏哥说的宏哥在最后提到网站的反爬虫机制,那么宏哥在自己本地做一个网页,没有那个反爬虫的机制,谷歌浏览器是不是就可以验证成功了,宏哥就想验证一下自己想法,其次有人私信宏哥说是有那种类似拼图的验证码如何处理。于是写了这一篇文章,另

    2024年02月22日
    浏览(32)
  • 《最新出炉》系列初窥篇-Python+Playwright自动化测试-19-处理鼠标拖拽-中篇

    1.简介 上一篇中,主要是介绍了拖拽的各种方法的理论知识以及实践,今天宏哥讲解和分享一下划取字段操作。例如:需要在一堆log字符中随机划取一段文字,然后右键选择摘取功能。 2.划取字段操作 划取字段操作就是在一段文字中随机选中一段文字,或者在标记文字。当然

    2024年02月21日
    浏览(29)
  • playwright自动化上传附件

    自动设置上传头像 1. 首先保存本地一个文件,例如 aaa.php 2. 获取输入类型为 \\\"file\\\" 的按钮 3. 将本地保存的图片路径赋值 4. 点击上传按钮

    2024年02月07日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包