【发布时间】:2019-01-27 17:31:00
【问题描述】:
我尝试缓存read_html/xml2以避免在开发过程中淹没服务器
library(digest)
library(xml2)
url = "https://en.wikipedia.org"
cache = digest(url)
if (file.exists(cache)) {
cat("Reading from cache\n")
html = readRDS(cache)
} else {
#Sys.sleep(3)
cat("Reading from web\n")
html = xml2::read_html(url)
saveRDS(html, file = cache)
}
html
这失败了,因为文件中只存储了外部指针,这些指针在重新运行时不再有效。当我在read_html 上使用memoise 时也会出现同样的问题。
【问题讨论】:
标签: r caching web-scraping memoise