2016-11-04 7 views
-1

「下付き文字」の問題を解決する方法がわからない映画のランキングを取得したいと考えています。ここに私のコードです。

movieScoreapi <- function(x) { 
api <- "https://api.douban.com/v2/movie/search?q={" 
url <- paste(api, x, "}", sep = "")  
res <- getURL(url)  
reslist <- fromJSON(res)  
name <- reslist$subjects[[1]]$title  
score <- reslist$subjects[[1]]$rating$average  
return(list(name = name, score = score)) 
} 
movieScoreapi("Life is beautiful") 

とエラーがのようなものです:あなたは間違っているエンドポイントを使用している

Error in reslist$subjects[[1]] : subscript out of bounds 
+0

apiのドキュメントを正しく読んだことはありますか? – vagabond

答えて

0

1)。

2)作成しているURL文字列が正しくありません。あなたが同じを使用したい場合は GET/V2 /映画/件名/ 1764796

https://api.douban.com/v2/movie/search?q= {ライフ%20Is%20Beautiful}

正しいエンドポイントは次のとおりです。それを見て、ブラウザにコピー&ペーストして出力このですエンドポイントを取得してコンテンツを取得するには、次のようにします。

install.packages("httr") 
require(httr) 

movieScoreapi <- function(x) { 
api <- "https://api.douban.com/v2/movie/search?q=" 
    url <- paste(api, x, sep = "")  
    res <- GET(url)  
    reslist <- content(res)  
    df_contents <- rbind(unlist(content(res))) 
    return(df_contents) 
} 
movieScoreapi("Dracula") 
    count start total title        
[1,] "20" "0" "0" "搜索 \"LifeIsBeautiful\" 的结果" 
関連する問題