我有这个不会运行的功能。代码内部的命令在它自己应用时起作用,但是当我在这个lapply函数中运行它时会出错。我已经尝试更新我的Curl库等...不知道为什么会发生这种情况。
library(curl)
##dataframe looks like this as factor list: x = "http://google.com"
funk <- function(x) {
read_html(x) %>% html_node("title") %>% html_text
}
df$titles<-lapply(df$urls,funk)
Error: 'Error in curl::curl_fetch_memory(url, handle = handle) :
URL using bad/illegal format or missing URL
' does not exist in current working directory ('/Users/Home/').
感谢任何帮助。
答案 0 :(得分:0)
该功能适用于lapply
:
df <- data.frame(urls=c("http://google.com", "http://ytcracker.com"), stringsAsFactors = F)
funk <- function(x) {
read_html(x) %>% html_node("title") %>% html_text
}
lapply(df$urls, funk)
[[1]] [1] "Google" [[2]] [1] "ytOS/2014"
df$titles <- lapply(df$urls, funk)
df
urls titles 1 http://google.com Google 2 http://ytcracker.com ytOS/2014
所以问题必须在于问题的不可重现部分,这将是数据框(请{RES}中的dput()
您的数据 - 请查看R标签说明以获取更多信息)。
具体来说,错误消息意味着问题可能就是您在该数据框中指定URL的方式。
更具体地说,当你收到错误说
时' does not exist in current working directory ('/Users/Home/').
这几乎总意味着您没有使用http://
或https://
等来验证域名。