从xml已解析列表转换为R中的字符

Nex*_*eer 1 xml r

我已经使用htmlParse()读取并解析了一个url.

我已经使用xpathApply来过滤掉并获得我想要的确切内容.

我想将创建的列表转换为字符.当我尝试转换时,我收到此错误:

"<pointer: 0x000000001673db70>"
Run Code Online (Sandbox Code Playgroud)

我假设解析的内容使用指针指向主对象.

我想要的内容可能包含一些XML语法,因此xmlValue不会有任何好处.

jdh*_*son 6

您可以使用saveXML将内部节点转换为字符:

library(XML)
appUrl <- 'http://cran.r-project.org/'
doc <- htmlParse(appUrl)
out1 <- xpathSApply(doc, "//*/frame")
out2 <- xpathSApply(doc, "//*/frame", saveXML)
> str(out1)
List of 3
 $ :Classes 'XMLInternalElementNode', 'XMLInternalNode', 'XMLAbstractNode' <externalptr> 
 $ :Classes 'XMLInternalElementNode', 'XMLInternalNode', 'XMLAbstractNode' <externalptr> 
 $ :Classes 'XMLInternalElementNode', 'XMLInternalNode', 'XMLAbstractNode' <externalptr> 
> str(out2)
 chr [1:3] "<frame src=\"logo.html\" name=\"logo\" frameborder=\"0\"/>" ...
Run Code Online (Sandbox Code Playgroud)