webdriver

Взаимодействие с Chromium совместимыми браузероми через DevTools протокол.


new(options)

Создается сессия через которую выполняется взаимодействие с бразуером средствами API.

Параметры

#ТипОписание
1таблицаопции сессии

Результат

#ТипОписание
1webdriver_ctx_udконтекст для работы с браузером

Пример

local wd = require"webdriver"
ctx = wd.new()
ctx:close()

Работа с сессией (webdriver_ctx_ud)

  • navigate
  • query

Осуществляет переход на указанную страницу.

Параметры

#ТипОписание
1строкаадрес

Результат

#ТипОписание
1ошибка или nil
ctx = wd.new()
ctx:navigate("https://google.com")
html, err = ctx:query("html")
print(html, err)
ctx:close()

query(selector)

Получает данные из сессии по указанному селектору. Можно использовать имена классов, ID элемента или тег.

Параметры

#ТипОписание
1строкаселектор

Результат

ctx = wd.new()
ctx:navigate("https://google.com")
html, err = ctx:query("title") -- #ID, .className
print(html, err)
ctx:close()
#ТипОписание
1HTML фрагмент
2ошибка или nil