我下面的代码向一个日本的地理位置网站发送了一个请求,并得到了一个新的页面,但我无法让RSelenium定位并点击这个链接。
library(XML)
library(RSelenium)
remDr <- remoteDriver(
remoteServerAddr = "localhost",
port = 4445L,
browserName = "firefox"
)
remDr$open()
remDr$navigate("https://maps.gsi.go.jp")
remDr$screenshot(display = TRUE)
remDr$getCurrentUrl()
webElem <- remDr$findElement(using = "id", value = "query")
webElem$getElementAttribute("id")
webElem$highlightElement()
webElem$sendKeysToElement(list("茨城県行方郡玉造町","\uE007"))
remDr$screenshot(display = TRUE)
我想点击下面的节点,并从新的页面中获取URL,但我的所有尝试都没有用 remDr$findElement
正在工作。我是不是漏掉了什么明显的东西?
<a href="javascript:void(0);" style="padding-left: 32px; background: url("image/mapicon/search_result.png") 0px 50% no-repeat;"><div class="title">茨城県行方郡</div><div class="muni">茨城県行方市</div></a>
像这样吗?
link <- remDr$findElement(using = "css selector", value = ".muni")
link$highlightElement()
link$clickElement()
remDr$getCurrentUrl()
用XPath.NET Framework Framework 2.0来实现。
remDr$navigate("https://maps.gsi.go.jp")
webElem <- remDr$findElement(using = "xpath","//input[@id='query']")
webElem$clickElement()
webElem$sendKeysToElement(list("茨城県行方郡玉造町", key = "enter"))
webElem2 <- remDr$findElement(using = "xpath","//div[@class='searchresultdialog_ul_frame']//a")
webElem2$clickElement()
如果你得到错误,使用 尝试捕捉组合 归功于@Victor Burnett)来等待元素的存在。