Spotipy:如何同时按艺术家和歌曲进行搜索

Spotipy: How do I search by both artist and song

给定歌曲名称和艺术家姓名,我正在尝试使用 Spotipy 查找正确的歌曲。但是,我看不到同时按歌曲名称和艺术家进行搜索的方法:两者皆可:

   sp.search(q="Money", type="track", limit=10)
   sp.search(q="Pink Floyd", type="artist", limit=10)

这个问题是我得到了一堆不相关的结果,特别是如果我按曲目搜索(例如:金钱的最高结果是 Future 的 "Rent Money" 而不是 Pink Floyd 的 "Money") .我可以扩展限制并过滤掉不相关的结果,但考虑到我将大规模执行此操作,我宁愿只正确查询 Spotify,获取第一个结果,然后继续。有什么方法可以使用 Spotipy 同时查询曲目名称和艺术家吗?

尝试查看 https://developer.spotify.com/web-api/search-item/

我认为你误解了类型。我一直想要 return 曲目列表,所以类型是 track。换句话说,这定义了要 returned 的实体类型。

查询过滤器可以像 Money 一样完全通用,也可以像 artist:Floyd track:Money 那样专注于某些参数。这可能非常强大,因为您可以查看相册、日期字段、受欢迎程度等等。

我常用

let q = String.init(format:"artist:%@ track:%@",artistName,trackName)

不要忘记对字符串进行 %-encode!