@softvisio/playwright
v2.8.20
Published
Playwright wrapper
Downloads
401
Readme
:information_source: Please, see the full project documentation here:https://softvisio-node.github.io/playwright/
Introduction
Provides set of patches and extensions for playwright
.
You can find original playwright API documentation here.
Install
npm install @softvisio/playwright
It doesn't installs any browsers by default, so if you need chromiun
you need to install it manually:
npx playwright install chromium
Usage
import playwright from "@softvisio/playwright";
Class: BrowserDevices
playwright.device.random();
Device profile
Device profile is a {Object} which contains varions properties, which are describes device:
id
{string} Device ID.name
{string} Device name.screen
{Object} Screen dimensions:width
{integer} Screen width.height
{integer} Screen height.
viewport
{Object} Viewport dimensions:width
{integer} Screen width.height
{integer} Screen height.
deviceScaleFactor
{number} Device scale factor.isMobile
{boolean}true
if device is a mobile device.hasTouch
{boolean}true
if device has touch interface.userAgent
{string} UserAgent string.userAgentPlatform
{string} UserAgent platform name.platform
{string} Navigator platform name.webglVendor
{string} WebGL vendor name.webglRenderer
{string} WebGL renderer name.
device.random()
- Returns: {Object} Random device profile.
device.desktop()
- Returns: {Object} Random desktop device profile.
device.mobile()
- Returns: {Object} Random mobile device profile.
device.windows()
- Returns: {Object} Random windows device profile.
device.windows10()
- Returns: {Object} Random windows10 device profile.
device.linux()
- Returns: {Object} Random linux device profile.
device.ipad()
- Returns: {Object} Random iPad device profile.
Class: BrowserType
Patch for the original BrowserType class. Adds following changes:
headless
By default underwindows
headless is set to thefalse
for other platforms to thetrue
.executablePath
By default forlinux
platform is set to the"/usr/bin/google-chrome-stable"
.proxy
By default adds proxy server loopback that bypass all requests. It can be overridden in the browser contexts.
Class: Browser
browser.isHeadless
- Returns: {boolean}
true
if browser started in theheadless
mode.
browser.newContext( options )
options
{Object} New context options. Below are enumerated only the changes for the original API method:device
{Object} Device profile. See {BrowserDevices}.stealth
{boolean} Enables various stealth mode extensions, which helps to hideheadless
mode. Default:true
.proxy
{string|ProxyClient|Object} Added support for {ProxyClient}. If {string} is provided it will be passed to the {ProxyClient} constructor as URL.
Class: Page
page.imagesIsDisabled
- Returns: {boolean}
true
if images is currently disabled.
page.disableImages()
Sets route
filter, which filters out images requests.