我正在尝试创建一个闪亮的网页,通过操纵Google学术搜索的数据来提供定制的发布列表。下面的代码在我自己的计算机上正常工作,但是使用shinyapps.io服务器会出现错误“get_profile中的警告(id = scholar.id):强制引入的NAs。”
我已经检查过scholar.id是一个字符变量。似乎来自学者包的关键get_profile函数没有响应。
这是我的最小用户界面:
library(shiny)
library(scholar)
shinyUI(fluidPage(
sidebarLayout(
sidebarPanel(
textInput(inputId = "google.id",
label = "Google Scholar ID (12 characters)",
value='lhc97roAAAAJ')
),
mainPanel(
textOutput(outputId = 'h_text')
) # end of main panel
)))
这是我的最小服务器:
shinyServer(function(input, output) {
source('scholar.R')
results <- function(){
results = scholar(scholar.id=input$google.id)
results
}
output$h_text <- renderText({
paste(results()$name, '.\n',
results()$affiliation, '.\n')
})
关键功能的最小版本:
scholar = function(scholar.id='lhc97roAAAAJ'){
ret = list() # start with blank output
bio = scholar::get_profile(id=scholar.id) # get basics
name = bio$name
affiliation = bio$affiliation
ret$name = name
ret$affiliation = affiliation
return(ret)
}
})