getx

The command to get a single Element using an XPath selector.

Syntax

py.getx(xpath: str) -> Element
py.getx(xpath: str, timeout: int) -> Element

---or---

Element.getx(xpath: str) -> Element
Element.getx(xpath: str, timeout: int) -> Element

Usage

correct usage
# Yield the first Element in .nav with tag name of a
py.get(".nav").getx("//a")

---or---

# Yield the first Element in document with id of 'button'
py.getx("//*[@id='button']")

---or--- # store in a variable

element = py.getx("//*[@id='button']")

---or--- # chain an Element(s) command

# chain an action
py.getx("//*[@id='button']").click()

---or--- # control the timeout in any of the above usages

py.getx("//a[@href='/about']", timeout=5).click()
incorrect usage
# Errors, 'title' does not yield Element
py.title.getx("//a")

---or---

# Errors, 'get_cookie' does not yield Element
py.get_cookie().getx("//[text()='foo' and @class='bar']")

Arguments

  • xpath (str) - The XPATH selector to use

  • timeout=None (int) - The number of seconds for this command to succeed.

    • timeout=None will use the default wait_time in pylenium.json

    • timeout=0 will poll the DOM immediately with no wait

    • Greater than zero will override the default wait_time

Yields

  • Element - The first element found, even if multiple elements match the query.

Examples

# The button should be displayed
py.getx("//*[@id='button']").should().be_visible()

Last updated