gpt4 book ai didi

r - 无法保存 - 在 R 中加载从 rvest 生成的 xml_document

转载 作者:数据小太阳 更新时间:2023-10-29 01:47:20 28 4
gpt4 key购买 nike

read_html 函数生成一个 xml_document,我想保存它并稍后加载它以解析它。

问题是加载 xml_document 后其中没有 html。

library(rvest)
library(magrittr)
doc <- read_html("http://www.example.com/")
doc %>% html_node("h1") %>% html_text

我得到:[1]“示例域”

但是当我先保存 xml_document doc 对象并再次加载它时,似乎一切都已清除。

save(doc, file=paste0(getwd(), "/example.RData"))
rm(doc)

load(file=paste0(getwd(), "/example.RData"))
doc %>% html_node("h1") %>% html_text

我得到:错误:没有匹配项

或者当我运行 doc 时,我得到:{xml_document} 一个空的 xml_document。

同样的情况是,当我运行 doc 时,在加载它之后,我收到一条消息说 RStudio 已停止工作。

我在两台不同的windows机器上试过,遇到了同样的问题。

sessionInfo()

R version 3.3.0 (2016-05-03)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

locale:
[1] LC_COLLATE=English_United Kingdom.1252 LC_CTYPE=English_United Kingdom.1252
[3] LC_MONETARY=English_United Kingdom.1252 LC_NUMERIC=C
[5] LC_TIME=English_United Kingdom.1252

attached base packages:
[1] stats graphics grDevices utils datasets methods base

other attached packages:
[1] magrittr_1.5 rvest_0.3.1.9000 xml2_0.1.2

loaded via a namespace (and not attached):
[1] httr_1.1.0 R6_2.1.2 tools_3.3.0 Rcpp_0.12.5

最佳答案

我找到了一种解决方法,虽然效率不高,但可以完成工作。

逻辑是将xml_document保存为字符串,再用read_html读入。

library(rvest)
library(magrittr)
doc <- read_html("http://www.example.com/")

# convert it to character
doc %<>% as("character")

save(doc, file=paste0(getwd(), "/example.RData"))
rm(doc)

load(file=paste0(getwd(), "/example.RData"))
doc %>% read_html %>% html_node("h1") %>% html_text

关于r - 无法保存 - 在 R 中加载从 rvest 生成的 xml_document,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37703689/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com