部分匹配(pmatch)不适用于shinyapps.io
我一直在开发一个web抓取应用程序,用于从JSTOR收集一些信息。该应用程序在本地运行良好,但在shinyapp.io上部署时不起作用 这个想法很简单,应用程序下载html页面(如下:)并阅读旁边的列表,在那里可以找到关于每个学科的点击次数的信息部分匹配(pmatch)不适用于shinyapps.io,shiny,match,shinyapps,Shiny,Match,Shinyapps,我一直在开发一个web抓取应用程序,用于从JSTOR收集一些信息。该应用程序在本地运行良好,但在shinyapp.io上部署时不起作用 这个想法很简单,应用程序下载html页面(如下:)并阅读旁边的列表,在那里可以找到关于每个学科的点击次数的信息 webpage <- read_html(filePath) hits_html <- html_nodes(webpage, 'li') hits <- html_text(hits_html) 网页亚瑟!它似乎与预期结果中使用的
webpage <- read_html(filePath)
hits_html <- html_nodes(webpage, 'li')
hits <- html_text(hits_html)
网页亚瑟!它似乎与预期结果中使用的行分隔有关。此带“\r\n”的结果将仅与在Windows环境中运行它所获得的HTML匹配。如果您的服务器是基于Unix的服务器,它将不匹配,因为行分隔符为“\n”
尝试从预期结果中删除\r,然后重新运行应用程序
disciplines <- list("\r\n African American Studies",
"\r\n African Studies",
"\r\n Agriculture",
"\r\n American Studies",
"\r\n Anthropology",
"etc...")
index <- pmatch(disciplines[[i]], hits)
string <- hits[index]
begin<-regexpr("\\(", string)
end<-regexpr("\\)", string)
k<-substring(string, begin+1, end-1)
k<-sub(",", "", k)
k<-as.numeric(k)
index <- pmatch(disciplines[[t]], as.list(hits)) # DOES NOT WORK ON SHINYAPPS.IO
index <- pmatch(disciplines[[t]], hits) # DOES NOT WORK ON SHINYAPPS.IO
index <- which(stringr::str_detect(hits, disciplines[[t]]))[[1]] # DOES NOT WORK ON SHINYAPPS.IO
index <- sjmisc::str_find(hits, disciplines[[t]])[[1]] # DOES NOT WORK ON SHINYAPPS.IO