playwright的安装与使用

一、安装

所有安装严格按照指定版本,不然可能会报错,为啥报错我也不知道

1、准备环境 win10(playwright好像不支持win7 python2)

2、 安装python3.7.9(这个是为了兼容robot)

https://www.python.org/downloads/windows/ 下载3.7.9版本

2、在线安装playwright 1.9.0版本

不要安装新版本,运行from playwright.sync_api import sync_playwright老报错,安装低版本解决了,

Traceback (most recent call last):
  File "C:\aisa_ui\test.py", line 2, in <module>
    from playwright.sync_api import sync_playwright
  File "C:\Users\admin-pc1102\AppData\Local\Programs\Python\Python311\Lib\site-packages\playwright\sync_api\__init__.py", line 23, in <module>
    import playwright.sync_api._generated
  File "C:\Users\admin-pc1102\AppData\Local\Programs\Python\Python311\Lib\site-packages\playwright\sync_api\_generated.py", line 25, in <module>
    from playwright._impl._accessibility import Accessibility as AccessibilityImpl
  File "C:\Users\admin-pc1102\AppData\Local\Programs\Python\Python311\Lib\site-packages\playwright\_impl\_accessibility.py", line 17, in <module>
    from playwright._impl._connection import Channel
  File "C:\Users\admin-pc1102\AppData\Local\Programs\Python\Python311\Lib\site-packages\playwright\_impl\_connection.py", line 21, in <module>
    from greenlet import greenlet
  File "C:\Users\admin-pc1102\AppData\Local\Programs\Python\Python311\Lib\site-packages\greenlet\__init__.py", line 29, in <module>
    from ._greenlet import _C_API # pylint:disable=no-name-in-module
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ImportError: DLL load failed while importing _greenlet: 找不到指定的模块。

Process finished with exit code 1
pip install playwright==1.9.0   #安装playwright
playwright install #安装playwright支持的浏览器

pip uninstall playwright #如果装错了 可以卸载再执行上面命令重装

3、执行下面命令 能执行成功就代表安装没问题了

playwright codegen --target python -o open_baidu.py -b chromium https://www.baidu.com

如果有报错如下报错

page.goto: net::ERR_NAME_NOT_RESOLVED at http://chromium/  navigating to "http://chromium/", waiting until "load"

是因为ssl证书错误,忽略https证书运行

playwright codegen --ignore-https-errors --target python -o open_baidu.py -b chromium https://www.baidu.com

4、python3环境下的robot安装

pip install robotframework 

pip install robotframework-ride(不支持python3.8及以上版本,3.8及以上安装会报wxpython错误)

5、git安装

直接下一步安装就行,下载地址:

Git - Downloads

二、使用

录制脚本

2.1、python -m playwright codegen -b chromium --target python -o test.py

生成的test.py在重新运行时遇到了问题,如上,降低playwright版本后解决

2.2、打开https链接报错

使用context = browser.new_context(ignore_https_errors=True) 解决

2.3、元素定位:

文本定位:page.click("text=攻击成功告警数") 或者page.click("text=攻击成功告警数")

按钮定位:page.click("button(也可以是span等):has-text(\"登 录\")")    #按钮包含登录字样

定位元素个数:a = page.locator("text="+text).count()

2.4、页面操作:

page.click(定位)   #点击

page.fill(定位,值)  #输入

page.text_content(定位) #获取文本值

page.press(定位,按键(比如Enter))

2.5 文件上传

#这种适用于上传元素是点击按钮上传
with page.expect_file_chooser() as fc_info:
     page.click("button:has-text(\"文件上传\")")
file_chooser = fc_info.value
file_chooser.set_files("文件路径")  #多个文件用列表["文件路径1","文件路径2"]

三、jenkins集成

遇到问题:

1、报错ms-playwright路径不对

解决:直接将pc上的ms-playwright文件夹复制到这个路径运行

2、邮件发送失败报错

Not sending mail to unregistered user XX because your SCM claimed this was associated with a user ID ‘XX' which your security realm does not recognize; you may need changes in your SCM plugin

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值