首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spotify API:搜索中的随机性

Spotify API:搜索中的随机性
EN

Stack Overflow用户
提问于 2021-06-16 16:08:12
回答 1查看 426关注 0票数 1

在我的论文中,我试图从API中随机抓取Spotify数据。

我正在寻找美国音乐从特定的年份和类型,这是定义在我的API搜索。

但是,为了进一步扩展我的数据集,我想在API中的搜索中添加随机性,例如添加一个随机通配符(基于本文:Spotify API:获取随机歌曲)。

下面是我的代码,没有通配符:

代码语言:javascript
复制
for(j in 1:length(YEAR)){
for(h in 1:length(shortlist)){
for (i in 1:100){
  temporary_url[i] = paste0("https://api.spotify.com/v1/search?query=", 
                          "year:", YEAR[j], "+", # I'm looking for 2014:2019 tracks
                          "genre:", shortlist[h], # list of 6 genres that I'm interested in
                          "&type=", TYPE, # tracks instead of artists
                          "&market=", MARKET,  # US Market
                          "&limit=", LIMIT, # maximum allowed tracks per request
                          "&offset=", sample(c(1:999), 1), # create random offset for a little bit randomness
                          "&include_external=audio")
}
  df_url <- c(df_url, temporary_url)
  temporary_url <- NA
}
}

到目前为止,我还没有成功地增加随机性。有一次,我在搜索中使用一个随机元音来添加一个随机元音。当我这样做时,API返回一个404错误。如果我不这样做,我会收到200条OK消息,表明我的搜索成功了。

到目前为止,我的方法是存储一个向量(例如%25a%25,a%25,.)并使用示例函数向URL添加一个字符串。这之前的“年”是我工作的一部分。这将返回错误。

有没有人建议我如何改进我当前的API URL,使其具有随机性而不返回404错误?

提前谢谢你!

EN

回答 1

Stack Overflow用户

发布于 2021-12-09 16:33:54

几个月前,在开发兰迪之前,我也有过同样的问题,这是一个随机的Spotify播放列表生成器。为了获得随机歌曲,我尝试了多个东西,其中有几个工作正常,在以下几个方面:

  • 使用带有q参数"%25a%25“的API函数搜索,或使用任何其他随机字母代替a。这将使您获得其名称中有a的歌曲。然后,您可以将偏移量参数设置为一个随机数,然后通过搜索函数得到1000首歌曲中的一首。问题在于,搜索功能将根据多少人听这些歌曲对音乐进行排序,并且只显示流行音乐。
  • 为了解决“流行音乐”的问题,我认为最好的选择是获得一个歌曲数据库,并使用相同的搜索功能,添加歌曲名作为Q参数,因此搜索将更加具体,并会找到不受欢迎的结果。我使用的数据库是MusicBrainz,它有多达3000万首歌曲。我仍然使用一个随机偏移参数,并必须检查歌曲是否在Spotify中(不是数据库中的所有歌曲都在Spotify中),然后再将它添加到播放列表中。它运行得很好,我真的为这个结果感到骄傲。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68006378

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档