如何找到在使用Rselenium网页元素?(how to find element in a

2019-10-22 19:38发布

我有一个网页下面的标签:

<a target="PARENT" href="/bin-din/WebOb/mom.ko/6/wo/asaksdaksjd
/5.1.5.5.33.23.23">View Data Set</a>

我怎么能查找在Rselenium这个元素? 例如,如果我的当前会话保存在remDr,我应该怎么搜索:

webElem <- remDr$findElement(??)

我需要使用,因为随着时间的推移在href链接改变它的显示器链接(查看数据集)来搜索元素。 感谢很多的帮助

Answer 1:

尝试

library(XML)
fileUrl <- ("http:\\wherever you got your file")
doc <- htmlTreeParse(fileUrl, useInternal=T)
xpathSApply(doc, "//a[@href]", xmlGetAttr, "href")

示范:

fileUrl <- "http://kimkardashianonline.org/"
doc <- htmlTreeParse(fileUrl, useInternal=T)
xpathSApply(doc, "//a[@href]", xmlGetAttr, "href")
[1] "http://kimkardashianonline.org/?page_id=2"                                        
[2] "http://www.kimkardashianonline.org/gallery/"                                      
[3] "http://www.kimkardashianonline.org/icons/"                                        
[4] "http://#"                                                                         
[5] "http://kimkardashianonline.org/?page_id=42"   


Answer 2:

在回答由@plafort的[@href]是没有必要,除非你知道提前你想设置href属性值是什么。 因此,这里是前进的通用方法。 这适用于该URL请求。 显然,“_blank”是不是你想要的东西。


    library(XML)
    library(RCurl)
    gSite <- getURL("http://www.sitepoint.com/web-foundations/target-html-attribute/") 
    sParse <- htmlParse(gSite)
    xpathSApply(sParse, "//a[@target='_blank']", xmlGetAttr, "href") 


Answer 3:

您可以使用: webElem$getElementAttribute("href")