Rselenium щелкните конкретный элемент из списка, созданного findElements

У меня есть рабочий код, в котором для заданного URL-адреса я захватываю все элементы с одинаковым именем класса. Кажется, их три с разными именами "ElementText".

Моя проблема в том, что я хотел бы щелкнуть один из этих элементов (clickElement), а именно второй с названием "ПОЛУЧИТЬ БОЛЬШЕ ОТПРАВЛЕНИЙ".

Может ли кто-нибудь указать мне в правильном направлении, как это сделать? Мне удалось щелкнуть первый элемент, но не так, как щелкнуть конкретный элемент из списка.

Пожалуйста, посмотрите код ниже, и большое спасибо.

библиотека (RSelenium) библиотека (rvest)

# Download binaries, start driver, and get client object.
rd <- rsDriver(browser = "firefox", port = 1999L)
ffd <- rd$client

ffd$navigate(paste0("https://www.XXXXXX",sep=""))

load_btn <- ffd$findElements(using = "css selector", "button.md-raised.blue-md-button.md-primary.md-button.md-ink-ripple")

#getting list of element names from abobe
unlist(lapply(load_btn, function(x) x$getElementText()))

"МАРС 12" "УЗНАЙТЕ БОЛЬШЕ ВЫЛЕТОВ" ""

#My issue is here, how to I specify that I want to click the "GET MORE DEPARTURES" element?
load_btn$clickElements()

2 ответа

Я нашел решение:

# Download binaries, start driver, and get client object.
rd <- rsDriver(browser = "firefox", port = 1999L)
ffd <- rd$client

ffd$navigate(paste0("https://www.XXXXXXX",sep=""))

 load_btn <- ffd$findElements(using = "css selector", "button.md-raised.blue-md-button.md-primary.md-button.md-ink-ripple")

#getting list of element names from abobe
unlist(lapply(load_btn, function(x) x$getElementText()))

Решение

solution<-unlist(lapply(load_btn, function(x) x$getElementText()))

load_btn <- load_btn[[which(solution== "GET MORE DEPARTURES")]]

Я бы попробовал подставить элемент и щелкнуть по нему (поскольку вы уже знаете, что это второй элемент в вашем списке):

      load_btn[[2]]$ClickElement()

Удачи!

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