Драматург: получить полный XPATH выбранного элемента

Я хочу получить полный XPATH ( \\html\div\...) элемента, который я ранее нашел, например, page.waitForSelector() или же page.querySelector().

Как бы я поступил так с драматургом? Никаких встроенных решений для этого мне найти не удалось.

ПРИМЕЧАНИЕ: я использую playwright-python, но был бы открыт для реализации JS-решений для этого - при условии, что это будет работать.

Шаблон (взят из https://github.com/microsoft/playwright-python образец кода):

      from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    for browser_type in [p.chromium, p.firefox, p.webkit]:
        browser = browser_type.launch()
        page = browser.new_page()
        page.goto("http://whatsmyuseragent.org/")
        element = page.waitForSelector(selector="text=\"My IP Address: 192.168.0.1\"")
        # HERE: retrieve full XPATH of 'element'
        browser.close()

1 ответ

Для Typescript/Javascript есть playwright-dompath , который вы можете установить с помощью:

      npm install playwright-dompath

По сути, вы просто вызываете функцию xPath с выбранным вами элементом и получаете полный xPath. Под капотом он использует те же функции из Chrome DevTools.

Другие вопросы по тегам