2017-04-27 1 views
0

Ich versuche, das genaue Veröffentlichungsdatum für jede Youtube-Video-ID zu erhalten.Loop oder Funktion für Tuber

install.packages("tuber") 

library(tuber) 

yt_oauth("", "") # your personal Youtube API access comes here 

id<-c("F8wqmh3KybI", "2Llw-utG_mM", "F8wqmh3Kyb") 

df<-as.data.frame(id) 

stats <- get_video_details(video_id="F8wqmh3KybI") 

Dies wäre der Befehl, um die Statistiken für ein Video zu erhalten. Da ich ein paar hundert IDs habe, wie erstelle ich eine Funktion, die für jede ID das Veröffentlichungsdatum hinzufügt?

Vielen Dank im Voraus!

Jannis

PS: In der ursprünglichen Liste von IDs einige nicht funktionieren, so habe ich in dem Beispiel einer ID, die nicht funktioniert. Die Funktion sollte dies berücksichtigen können.

+0

nach 'get_video_details' Dokumentation, gibt er die Liste der' id' mit einer Liste von 'publishedAt' so die Frage an mich unklar. – clemlaflemme

Antwort

1

Ich denke, man mit so etwas wie kommen können:

install.packages("tuber") 

library(tuber) 

yt_oauth("", "") # your personal Youtube API access comes here 

id<-c("F8wqmh3KybI", "2Llw-utG_mM", "F8wqmh3Kyb") 

stats <- sapply(id, function(video_id){ 
     tryCatch(
      stats <- get_video_details(video_id=video_id)$publishedAt, 
      error = function(cond){stats <- "Wrong id"}) 
     c(video_id, stats) 
     })