首页 > 其他分享 >Playwright

Playwright

时间:2023-08-15 17:23:29浏览次数:24  
标签:playwright 浏览器 Playwright context page browser

Playwright是一个强大的Python库,仅用一个API即可自动执行Chromium、Firefox、WebKit等主流浏览器自动化操作。

安装包:pip install playwright
安装浏览器驱动python -m playwright install
CMD中输入:python -m playwright help 查看帮助信息
录制脚本:python -m playwright codegen https://www.baidu.com

录制脚本复杂命令
# 我们通过下面命令打开 Chrome 浏览器开始录制脚本
# 指定生成语言为:Python(默认Python,可选)
# 保存的文件名:mikezhou.py(可选)
# 浏览器驱动:webkit(默认webkit,可选)
# 最后跟着要打开的目标网站(默认仅仅是打开浏览器,可选)
python3 -m playwright codegen --target python -o 'mikezhou.py' -b chromium https://www.baidu.com
录制实例代码
from playwright.sync_api import Playwright, sync_playwright, expect


def run(playwright: Playwright) -> None:
    browser = playwright.chromium.launch(headless=False,slow_mo=1000)
    context = browser.new_context()
    page = context.new_page()
    page.goto("https://www.baidu.com/")
    page.locator("#kw").click()
    page.locator("#kw").fill("阿森纳")
    page.get_by_role("button", name="百度一下").click()
    page.screenshot(path='1.jpg',full_page=True)
    # ---------------------
    context.close()
    browser.close()


with sync_playwright() as playwright:
    run(playwright)


slow_mo=1000 为延时参数,可以理解为sleep。
full_page=Ture 为截取长图,默认为False。
浏览器非静默运行browser = playwright.chromium.launch(headless=False)
浏览器静默运行:browser = playwright.chromium.launch(headless=True)
浏览器默认语言为英语:context = browser.new_context(locale='en-US')

标签:playwright,浏览器,Playwright,context,page,browser
From: https://www.cnblogs.com/zxcy/p/17631884.html

相关文章

  • 《最新出炉》系列初窥篇-Python+Playwright自动化测试-11-playwright操作iframe-上篇
    1.简介原估计宏哥这里就不对iframe这个知识点做介绍和讲解了,因为前边的窗口切换就为这种网页处理提供了思路,另一个原因就是虽然iframe很强大,但是现在很少有网站用它了。但是还是有小伙伴或者童鞋们私下问这个问题,那么宏哥就单独写一篇关于iframe网页处理的文章。iframe是web自动......
  • 软件测试|web自动化测试神器playwright教程(三十)
    前言我们在进行自动化工作中,还会遇到表格的问题,比如下面的情况:如果我们想要获取表格内的数据,就需要我们先定位表格内的元素。table表格场景我们可以从表格结构中发现,table页面有这几个明显的标签:table、tr、th、tdtable标示一个表格tr标示这个表格的一行th定义表头......
  • 软件测试|web自动化测试神器playwright教程(三十一)
    前言我们都知道selenium可以操作命令行打开的Chrome浏览器,并且可以加载本地数据,因此我们可以绕过部分网站的登录步骤,直接对网站进行操作。如果我们不加任何参数,playwright打开的浏览器就是一个无痕浏览器,一般情况下,对我们测试人员来说,这一点并不影响我们的使用。但是playwright......
  • 软件测试|web自动化测试神器playwright教程(三十三)
    前言我们在使用selenium进行web自动化测试工作时,有时需要通过添加显式等待的方式,判断元素是否可见或者是否可以点击,其实这些元素属性也可以用于断言中,playwright同样可以去获取元素的状态,用于我们的后续操作或者断言中。本篇文章就来给大家介绍一下playwright对元素状态的判断。......
  • 软件测试|web自动化测试神器playwright教程(三十二)
    前言我们之前介绍过,我们在本地安装playwright时,默认会下载chromium,firefox和webkit浏览器,当然playwright不只支持下载这3个浏览器,还支持下载chrome、chrome-beta、msedge、msedge-beta、msedge-dev浏览器。下载浏览器在之前的教程中,我们介绍过,运行playwrightinstall命令会......
  • 软件测试|web自动化测试神器playwright教程(三十四)
    前言selenium有一个爬虫特别喜欢的功能,就是driver.page_source功能,它可以打印整个html页面的内容,我们可以从整个页面的内容中提取出我们想要的内容,playwright同样支持打印整个html页面的内容。获取完整页面html内容playwright提供了page.content()方法来获取页面内容,示例如下:......
  • 软件测试|web自动化测试神器playwright教程(二十七)
    前言使用selenium进行web自动化测试,如果我们打开了多个网页,进行网页切换时,我们需要先获取各个页面的句柄,通过句柄来区分各个页面,然后使用switch_to.window()实现切换,这样的操作比较麻烦,playwright的网页切换比selenium更为简单快捷。本文就给大家介绍一下playwright多个网页的切......
  • 软件测试|web自动化测试神器playwright教程(二十八)
    前言在我们使用部分网站的时候,我们会遇到进行日期选择的问题,比如我们预定火车票或者预定酒店,需要选择发车日期或者酒店的入住与退房时间。我们执行自动化测试遇到日期控件时,如果可以输入,可以使用selenium的send_keys()方法进行输入,playwright同样也可以实现对日期控件的操作,本文......
  • 软件测试|web自动化测试神器playwright教程(十九)
    前言我们日常工作中,经常会遇到我们的页面内容较多,一个屏幕范围无法完整展示内容,我们就需要滚动屏幕去到我们想要的地方,如下页面,我们想要在豆瓣首页,内容并不完整,如果我们想要直接点击电影模块中的选电影按钮,是需要往下滑动的。click点击操作如下图,我们要在豆瓣首页点击选电影......
  • 软件测试|web自动化测试神器playwright教程(十七)
    前言上篇文章我们介绍了使用playwright下载文件的方法,本篇文章我们将介绍使用playwright上传文件。上传文件是我们经常需要面对的场景,如果我们使用的是selenium,那我们的操作会比较复杂,因为有的文件上传是input控件,有些是需要我们直接传文件地址,一旦弹出文件选择框的话,selenium就......