部署时出现闪亮应用程序错误,在本地工作(rvest-->;html_节点问题)
我有一个闪亮的应用程序,可以从亚特兰大警察局的网站下载一个zip文件,然后将其解压成临时文件。该应用程序在本地运行良好,但当我将其部署到shinyapps.io时,我得到一个错误:部署时出现闪亮应用程序错误,在本地工作(rvest-->;html_节点问题),r,shiny,rvest,R,Shiny,Rvest,我有一个闪亮的应用程序,可以从亚特兰大警察局的网站下载一个zip文件,然后将其解压成临时文件。该应用程序在本地运行良好,但当我将其部署到shinyapps.io时,我得到一个错误: 找不到函数“xpath\u combinedselector” 我将其锁定为对R包“rvest”的调用,即函数“html\u nodes”(它使用包“selector”将CSS选择器转换为XML)。我认为这与光鲜端的版本控制有关,但我一直在思考如何修复它 作为参考,犯罪数据下载网站是:我正在使用底部的zip文件(每周
找不到函数“xpath\u combinedselector”
我将其锁定为对R包“rvest”的调用,即函数“html\u nodes”(它使用包“selector”将CSS选择器转换为XML)。我认为这与光鲜端的版本控制有关,但我一直在思考如何修复它
作为参考,犯罪数据下载网站是:我正在使用底部的zip文件(每周使用不同的url更新):“2009-20yy犯罪数据文件原始数据(mm/dd/yyyy)”
代码生成错误:
# load libraries (some of these are used later on in the app, but
# included here in case they might be the cause)
library(shiny); library(lubridate); library(ggplot2)
library(ggmap); library(RgoogleMaps); library(readr)
library(rvest); library(dplyr)
# Set up temp file to download zip file to
temp <- tempfile()
# Download zip file from location on APD website, to above temp file
download.file(
read_html("http://www.atlantapd.org/crimedatadownloads.aspx") %>%
# THE NEXT LINE IS THE PROBLEM CHILD
html_nodes("tr:nth-child(15) a") %>%
html_attr("href") %>%
paste0("http://www.atlantapd.org/", .),
destfile = temp)
#加载库(有些库稍后会在应用程序中使用,但是
#包括在此处,以防它们可能是原因)
图书馆(闪亮);图书馆(lubridate);图书馆(GG2)
图书馆(ggmap);图书馆(RgoogleMaps);图书馆(readr)
图书馆(rvest);图书馆(dplyr)
#设置要将zip文件下载到的临时文件
温度%
#下一行是有问题的孩子
html_节点(“tr:n子(15)a”)%>%
html_attr(“href”)%%>%
粘贴0(“http://www.atlantapd.org/", .),
destfile=temp)
应用程序错误日志:
2016-05-21T19:47:43.603137+00:00 shinyapps[103450]: Warning: Error in do.call: could not find function "xpath_combinedselector"
2016-05-21T19:47:43.610211+00:00 shinyapps[103450]: Stack trace (innermost first):
2016-05-21T19:47:43.610213+00:00 shinyapps[103450]: 76: do.call
2016-05-21T19:47:43.610214+00:00 shinyapps[103450]: 75: .self$xpath
2016-05-21T19:47:43.610216+00:00 shinyapps[103450]: 74: selector_to_xpath
2016-05-21T19:47:43.610217+00:00 shinyapps[103450]: 73: FUN
2016-05-21T19:47:43.610218+00:00 shinyapps[103450]: 72: lapply
2016-05-21T19:47:43.610221+00:00 shinyapps[103450]: 69: <Anonymous>
2016-05-21T19:47:43.610222+00:00 shinyapps[103450]: 68: mapply
2016-05-21T19:47:43.610223+00:00 shinyapps[103450]: 67: Map
2016-05-21T19:47:43.610224+00:00 shinyapps[103450]: 66: selectr::css_to_xpath
2016-05-21T19:47:43.610225+00:00 shinyapps[103450]: 65: make_selector
2016-05-21T19:47:43.610226+00:00 shinyapps[103450]: 64: node_find_all
2016-05-21T19:47:43.610227+00:00 shinyapps[103450]: 63: xml_find_all.xml_node
2016-05-21T19:47:43.610220+00:00 shinyapps[103450]: 70: tran$css_to_xpath
2016-05-21T19:47:43.610230+00:00 shinyapps[103450]: 60: html_nodes
2016-05-21T19:47:43.610219+00:00 shinyapps[103450]: 71: sapply
2016-05-21T19:47:43.610232+00:00 shinyapps[103450]: 58: withVisible
2016-05-21T19:47:43.610233+00:00 shinyapps[103450]: 57: freduce
2016-05-21T19:47:43.610234+00:00 shinyapps[103450]: 56: _fseq
2016-05-21T19:47:43.610235+00:00 shinyapps[103450]: 55: eval
2016-05-21T19:47:43.610236+00:00 shinyapps[103450]: 54: eval
2016-05-21T19:47:43.610237+00:00 shinyapps[103450]: 53: withVisible
2016-05-21T19:47:43.610238+00:00 shinyapps[103450]: 52: %>%
2016-05-21T19:47:43.610231+00:00 shinyapps[103450]: 59: function_list[[k]]
2016-05-21T19:47:43.610229+00:00 shinyapps[103450]: 61: html_nodes.default
2016-05-21T19:47:43.610228+00:00 shinyapps[103450]: 62: xml2::xml_find_all
2016-05-21T19:47:43.610242+00:00 shinyapps[103450]: 9: tryCatchList
2016-05-21T19:47:43.610243+00:00 shinyapps[103450]: 8: tryCatch
2016-05-21T19:47:43.610244+00:00 shinyapps[103450]: 7: connect$retry
2016-05-21T19:47:43.610245+00:00 shinyapps[103450]: 6: eval
2016-05-21T19:47:43.610246+00:00 shinyapps[103450]: 5: eval
2016-05-21T19:47:43.610238+00:00 shinyapps[103450]: 13: runApp
2016-05-21T19:47:43.610247+00:00 shinyapps[103450]: 3: eval
2016-05-21T19:47:43.610239+00:00 shinyapps[103450]: 12: fn
2016-05-21T19:47:43.610240+00:00 shinyapps[103450]: 11: doTryCatch
2016-05-21T19:47:43.610241+00:00 shinyapps[103450]: 10: tryCatchOne
2016-05-21T19:47:43.610415+00:00 shinyapps[103450]: Error in do.call(method, list(parsed_selector)) :
2016-05-21T19:47:43.610248+00:00 shinyapps[103450]: 2: eval.parent
2016-05-21T19:47:43.610247+00:00 shinyapps[103450]: 4: eval
2016-05-21T19:47:43.610249+00:00 shinyapps[103450]: 1: local
2016-05-21T19:47:43.603137+00:00 shinyapps[103450]:警告:do.call中出错:找不到函数“xpath\u combinedselector”
2016-05-21T19:47:43.610211+00:00 shinyapps[103450]:堆栈跟踪(最里面的第一个):
2016-05-21T19:47:43.610213+00:00 shinyapps[103450]:76:do.call
2016-05-21T19:47:43.610214+00:00Shinyapps[103450]:75:.self$xpath
2016-05-21T19:47:43.610216+00:00 shinyapps[103450]:74:选择器
2016-05-21T19:47:43.610217+00:00 shinyapps[103450]:73:乐趣
2016-05-21T19:47:43.610218+00:00 shinyapps[103450]:72:lappy
2016-05-21T19:47:43.610221+00:00 shinyapps[103450]:69:
2016-05-21T19:47:43.610222+00:00Shinyapps[103450]:68:mapply
2016-05-21T19:47:43.610223+00:00 shinyapps[103450]:67:地图
2016-05-21T19:47:43.610224+00:00Shinyapps[103450]:66:selectr::css_to_xpath
2016-05-21T19:47:43.610225+00:00 shinyapps[103450]:65:make_选择器
2016-05-21T19:47:43.610226+00:00 shinyapps[103450]:64:node_find_all
2016-05-21T19:47:43.610227+00:00 shinyapps[103450]:63:xml\u find\u all.xml\u节点
2016-05-21T19:47:43.610220+00:00Shinyapps[103450]:70:tran$css_to_xpath
2016-05-21T19:47:43.610230+00:00Shinyapps[103450]:60:html_节点
2016-05-21T19:47:43.610219+00:00 shinyapps[103450]:71:sapply
2016-05-21T19:47:43.610232+00:00 shinyapps[103450]:58:可见
2016-05-21T19:47:43.610233+00:00 shinyapps[103450]:57:freduce
2016-05-21T19:47:43.610234+00:00 shinyapps[103450]:56:
2016-05-21T19:47:43.610235+00:00 shinyapps[103450]:55:eval
2016-05-21T19:47:43.610236+00:00 shinyapps[103450]:54:eval
2016-05-21T19:47:43.610237+00:00 shinyapps[103450]:53:withVisible
2016-05-21T19:47:43.610238+00:00Shinyapps[103450]:52:%>%
2016-05-21T19:47:43.610231+00:00 shinyapps[103450]:59:功能列表[k]]
2016-05-21T19:47:43.610229+00:00 shinyapps[103450]:61:html_nodes.default
2016-05-21T19:47:43.610228+00:00 shinyapps[103450]:62:xml2::xml_find_all
2016-05-21T19:47:43.610242+00:00Shinyapps[103450]:9:tryCatchList
2016-05-21T19:47:43.610243+00:00Shinyapps[103450]:8:tryCatch
2016-05-21T19:47:43.610244+00:00Shinyapps[103450]:7:connect$retry
2016-05-21T19:47:43.610245+00:00 shinyapps[103450]:6:eval
2016-05-21T19:47:43.610246+00:00 shinyapps[103450]:5:eval
2016-05-21T19:47:43.610238+00:00 shinyapps[103450]:13:runApp
2016-05-21T19:47:43.610247+00:00 shinyapps[103450]:3:eval
2016-05-21T19:47:43.610239+00:00 shinyapps[103450]:12:fn
2016-05-21T19:47:43.610240+00:00 shinyapps[103450]:11:doTryCatch
2016-05-21T19:47:43.610241+00:00 shinyapps[103450]:10:tryCatchOne
2016-05-21T19:47:43.610415+00:00Shinyapps[103450]:do.call(方法、列表(已解析的_选择器))中出错:
2016-05-21T19:47:43.610248+00:00 shinyapps[103450]:2:eval.parent
2016-05-21T19:47:43.610247+00:00 shinyapps[103450]:4:eval
2016-05-21T19:47:43.610249+00:00 shinyapps[103450]:1:本地
问题在于在为
html\u节点
函数。此函数只有一个参数,css或xpath
如果不指定参数类型(在本例中是css选择器),则该参数将视为xpath(这就是为什么
错误:找不到函数“xpath\u combinedselector”
)。因此,为了确保Shining服务器在部署应用程序时能够识别您提供的参数类型,您应该指定html\u节点
参数,如下所示:
html_nodes(css="tr:nth-child(15) a")