Skip to content

Instantly share code, notes, and snippets.

@gadenbuie
Last active January 22, 2019 14:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gadenbuie/218898f4db2742a47da010744230d3d7 to your computer and use it in GitHub Desktop.
Save gadenbuie/218898f4db2742a47da010744230d3d7 to your computer and use it in GitHub Desktop.
Tweet embed example
library(shiny)
library(dplyr)
library(rtweet)
tweets <- search_tweets("#rstats", n = 5, include_rts = FALSE)
# https://github.com/mkearney/rtweet/pull/305/files
tweet_embed <- function(screen_name,status_id,...){
stem <- 'https://publish.twitter.com/oembed'
l <- list(...)
l$url <- sprintf('https://twitter.com/%s/status/%s',screen_name,status_id)
lpaste <- paste(names(l),as.character(l)%>%tolower(),sep='=',collapse = '&')
URI <- paste(stem,lpaste,sep = '?')
ret <- URI%>%httr::GET()%>%httr::content()
ret$html
}
ui <- fluidPage(
titlePanel("Tweet embed example"),
sidebarLayout(
sidebarPanel(
selectInput("status_id", "Tweet By", choices = setNames(
tweets$status_id, tweets$screen_name
))
),
mainPanel(
uiOutput("tweet_oembed")
)
)
)
server <- function(input, output) {
output$tweet_oembed <- renderUI({
tweets %>%
filter(status_id == input$status_id) %>%
select(screen_name, status_id) %>%
purrr::pmap_chr(tweet_embed) %>%
HTML()
})
}
# Run the application
shinyApp(ui = ui, server = server)
@yonicd
Copy link

yonicd commented Jan 22, 2019

that script doesnt refresh in a reactive env.

here is my session info

> devtools::session_info()
Session info -------------------------------------------------------------------------------------------------------------------------
 setting  value                       
 version  R version 3.5.1 (2018-07-02)
 system   x86_64, darwin15.6.0        
 ui       RStudio (1.2.1162)          
 language (EN)                        
 collate  en_US.UTF-8                 
 tz       America/New_York            
 date     2019-01-22                  

Packages -----------------------------------------------------------------------------------------------------------------------------
 package     * version     date       source                          
 askpass       1.1         2019-01-13 CRAN (R 3.5.2)                  
 assertthat    0.2.0       2017-04-11 CRAN (R 3.5.0)                  
 base        * 3.5.1       2018-07-05 local                           
 compiler      3.5.1       2018-07-05 local                           
 crayon        1.3.4       2017-09-16 CRAN (R 3.5.0)                  
 curl          3.3         2019-01-10 CRAN (R 3.5.2)                  
 datasets    * 3.5.1       2018-07-05 local                           
 devtools      1.13.6      2018-06-27 CRAN (R 3.5.0)                  
 digest        0.6.18      2018-10-10 CRAN (R 3.5.0)                  
 dplyr       * 0.8.0       2019-01-17 Github (tidyverse/dplyr@9aa5846)
 glue          1.3.0       2018-11-14 Github (tidyverse/glue@35c61e9) 
 graphics    * 3.5.1       2018-07-05 local                           
 grDevices   * 3.5.1       2018-07-05 local                           
 hms           0.4.2       2018-03-10 CRAN (R 3.5.0)                  
 htmltools     0.3.6       2017-04-28 CRAN (R 3.5.0)                  
 httpuv        1.4.5       2018-07-19 CRAN (R 3.5.0)                  
 httr          1.4.0       2018-12-11 CRAN (R 3.5.0)                  
 jsonlite      1.6         2018-12-07 CRAN (R 3.5.0)                  
 later         0.7.5       2018-09-18 CRAN (R 3.5.0)                  
 magrittr      1.5         2014-11-22 CRAN (R 3.5.0)                  
 memoise       1.1.0       2017-04-21 CRAN (R 3.5.0)                  
 methods     * 3.5.1       2018-07-05 local                           
 mime          0.6         2018-10-05 CRAN (R 3.5.0)                  
 openssl       1.2.1       2019-01-17 CRAN (R 3.5.2)                  
 packrat       0.4.9-3     2018-06-01 CRAN (R 3.5.0)                  
 pillar        1.3.1       2018-12-15 CRAN (R 3.5.0)                  
 pkgconfig     2.0.2       2018-08-16 CRAN (R 3.5.0)                  
 prettyunits   1.0.2       2015-07-13 CRAN (R 3.5.0)                  
 progress      1.2.0       2018-06-14 CRAN (R 3.5.0)                  
 promises      1.0.1       2018-04-13 CRAN (R 3.5.0)                  
 purrr         0.2.99.9000 2019-01-19 local                           
 R6            2.3.0       2018-10-04 CRAN (R 3.5.0)                  
 Rcpp          1.0.0       2018-11-07 CRAN (R 3.5.0)                  
 rlang         0.3.1       2019-01-08 CRAN (R 3.5.2)                  
 rsconnect     0.8.8       2018-03-09 CRAN (R 3.5.0)                  
 rstudioapi    0.8         2018-10-02 CRAN (R 3.5.0)                  
 rtweet      * 0.6.8.9000  2019-01-21 local                           
 shiny       * 1.2.0       2018-11-02 CRAN (R 3.5.0)                  
 stats       * 3.5.1       2018-07-05 local                           
 tibble        2.0.1       2019-01-12 CRAN (R 3.5.2)                  
 tidyselect    0.2.5       2018-10-11 CRAN (R 3.5.0)                  
 tools         3.5.1       2018-07-05 local                           
 utils       * 3.5.1       2018-07-05 local                           
 withr         2.1.2       2018-03-15 CRAN (R 3.5.0)                  
 xtable        1.8-3       2018-08-29 CRAN (R 3.5.0)                  

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment