Spotify API搜索未返回短名称的正确结果(spotipy)

2024-04-27 20:43:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个python脚本来生成播放列表,其中包括一个包含艺术家列表的文本文件

对于文件中的每个艺术家/行,我使用基本的spotipy搜索对象(spObject.search(artistName, 1, 0, 'artist')将名称提交给Spotify API。然后使用fuzzyfuzzy对结果进行字符串比较,以帮助筛选出错误匹配

然而,我注意到有一个问题似乎是针对短名称的。如果您查看下面的日志摘录,您可以看到所有5个字母或以下的匹配都有API返回的错误的、较长的匹配

Fergus McCreadie Trio : Fergus McCreadie Trio : 100 = [MATCH]
Fiona Hunter : Fiona Hunter : 100 = [MATCH]
Elephant Sessions : Elephant Sessions : 100 = [MATCH]
Siobhan Miller : Siobhan Miller : 100 = [MATCH]
Le Vent Du Nord : Le Vent du Nord : 93 = [MATCH]


Fara : Faraday Max : 53 = [FAIL]
Ímar : Imagine Dragons : 32 = [FAIL]
Lyre : Lyre Le Temps : 47 = [FAIL]
RANT : Rantan Gee : 14 = [FAIL]
Sian : Sian Evans : 57 = [FAIL]
TRYST : Tryst (UK) : 13 = [FAIL]

其中一些是相对不知名的艺术家,因此我最初确实想知道是否存在某种流行权重,但奇怪的是,如果我直接在Spotipy应用程序中手动搜索相同的艺术家(例如Imar、RANT、Fara),作为一般规则,第一个匹配是否正确

是否有人能够解释这种差异,和/或知道我是否可以对此做些什么?搜索对象(https://developer.spotify.com/documentation/web-api/reference/search/search/)看起来没有太多有用的参数,除非我开始尝试循环偏移量值以尝试更多结果

谢谢

亚历克斯


Tags: 对象le名称apisearchtriomatch错误