我有一个工作代码,其中对于给定的URL,我捕获具有相同类名的所有元素。似乎有三个,具有不同的"ElementText"名称。
我的问题是,我想点击其中一个元素(点击元素(,特别是第二个名为"获取更多部门"的元素。
有人能告诉我如何做这件事的正确方向吗?我已经成功地点击了第一个元素,但没有点击列表中的特定元素。
请参阅下面的代码,非常感谢。
库(RSelenium(库
# 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()))
"mars12"获得更多离开">
#My issue is here, how to I specify that I want to click the "GET MORE DEPARTURES" element?
load_btn$clickElements()
我找到了解决方案:
# 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()
祝你好运!