Skip to main content

Use UI5 selectors with Playwright

Project description

playwright-ui5-select

PyPI - Version

A mirror of the playwright-ui5 custom selector engine, to streamline its use in python.

This package:

  • mirrors the relevant distribution files css.js and xpath.js
  • reads file contents and exports it in a manner can be passed straight into the playwright api
  • also provides the raw data if needed

Installation

uv:

uv add playwright-ui5-select

pip:

pip install playwright-ui5-select

Usage

Given a Playwright instance, register one or both selector engines with .selectors.register().

from playwright_ui5_select import css, xpath

# name can be changed here from "ui5_css" to whatever you like
playwright.selectors.register("ui5_css", css)
playwright.selectors.register("ui5_xpath", xpath)

You can use the fixture supplied by playwright-python to register your selectors with the session-scoped Playwright instance:

# in conftest.py

@fixture(scope="session", autouse=True)
def _(playwright: Playwright):
    playwright.selectors.register("ui5_css", css)

The registered selector will now be available.

def test_basic(page: Page):
    page.goto("https://ui5.sap.com")
    page.click("ui5_css=sap.m.Button[text='Get Started with UI5']")

See the full api here.

Other uses

The package also exports *_raw variables for you to consume as you see fit:

from playwright_ui5_select import css_raw, xpath_raw

print(css_raw)
print(xpath_raw)

These do not include the extra IIFE code that returns the default exports as an expression.

You can also access the raw files directly with importlib.resources at import/ui5:

from importlib.resources import files

import playwright_ui5_select

data = files(playwright_ui5_select).joinpath("import").joinpath("ui5")

csspath = data.joinpath("css.js")

print("csspath", csspath)

print("css", csspath.read_text())

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

playwright_ui5_select-0.0.17.tar.gz (322.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

playwright_ui5_select-0.0.17-py3-none-any.whl (294.4 kB view details)

Uploaded Python 3

File details

Details for the file playwright_ui5_select-0.0.17.tar.gz.

File metadata

File hashes

Hashes for playwright_ui5_select-0.0.17.tar.gz
Algorithm Hash digest
SHA256 33c659b5100a9757dda021c6a2368a3369b3fb7f0082429984f40b7a5ca6361d
MD5 e3b36c4a8ef431008cb78d74ee542d53
BLAKE2b-256 f681b2bd6d5266be1b50ff21e362be9e1a1602c6401fbc7f313d9146355dafec

See more details on using hashes here.

File details

Details for the file playwright_ui5_select-0.0.17-py3-none-any.whl.

File metadata

File hashes

Hashes for playwright_ui5_select-0.0.17-py3-none-any.whl
Algorithm Hash digest
SHA256 226151fa056ea61e81e98f7dbfb93f0dc5f2489aedb4b87a3f8752e6f56a7268
MD5 3a6dae562255697bf70ac8bdcbbb232a
BLAKE2b-256 56fbfaa85fbb9aa5c35a55ea16bf223fd93dc4925ac54333a01c721704e51d01

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page