单击具有相同CSS RSelenium的所有元素

时间:2019-03-18 18:07:57

标签: r web-scraping rselenium

我正在尝试抓取一个网站,在该网站上我必须单击多个元素,然后使用RSelenium提取文本

我找到了与此主题有关的几个问题,但无法解决我的问题: Checking multiple checkbox with RSelenium Click all elements with same CssSelector or same XPath FindElements

在此搜索中,我想从句子中提取文本:https://eur-lex.europa.eu/search.html?typeOfCourtStatus=COURT_JUSTICE&DB_TYPE_COURT=COURT_JUSTICE&qid=1552508694151&DB_TYPE_OF_ACT=advGeneral&DTS_DOM=EU_LAW&typeOfActStatus=ADV_GENERAL&type=advanced&lang=en&SUBDOM_INIT=EU_CASE_LAW&date0=ALL:01012008%7C31122018&DTS_SUBDOM=EU_CASE_LAW&page=1

为此,我必须单击标题,然后将文本刮取。

我可以做一个:

browser$navigate(url)
Sys.sleep(1)
more <- browser$findElement(using = "css selector", value = ".title")
more$clickElement()
more <- browser$findElement(using = "id", value= "text")
sentences <- unlist(sapply(more, function(x){more$getElementText()}))
sentences <- unique(sentences)

但是当我尝试使用findElements时,它将返回错误attempt to apply non-function。我是新手,所以我的代码可能有更多错误,但这是我的尝试:

browser$navigate(url)
Sys.sleep(1)
more <- browser$findElements(using = "css selector", value = ".title")
for (i in 1:length(more)){
  more$clickElement()
  more <- browser$findElement(using = "id", value= "text")
  sentences <- unlist(sapply(more, function(x){more$getElementText()}))
  sentences <- unique(sentences)
  }

关于如何解决此问题的任何想法?预先感谢。

0 个答案:

没有答案