首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spotipy的限制?

Spotipy的限制?
EN

Stack Overflow用户
提问于 2020-09-06 06:10:55
回答 2查看 185关注 0票数 0

我正在尝试使用current_user_saved_tracks()获取我保存的所有歌曲的列表,但限制为20首。有没有办法访问我在m账户上的所有1000+歌曲?

EN

回答 2

Stack Overflow用户

发布于 2020-09-06 06:23:52

signature如下:

代码语言:javascript
复制
def current_user_saved_tracks(self, limit=20, offset=0)

official Spotify API reference (beta)表示最大值为limit=50。因此,在循环中,调用current_user_saved_tracks,但每次将offset递增limit

代码语言:javascript
复制
def get_all_saved_tracks(user, limit_step=50):
    tracks = []
    for offset in range(0, 10000000, limit_step):
        response = user.current_user_saved_tracks(
            limit=limit_step,
            offset=offset,
        )
        print(response)
        if len(response) == 0:
            break
        tracks.extend(response)
    return tracks

循环,直到得到空响应或异常。我不确定是哪一个。

如果你不需要担心用户决定在你检索时添加一个保存的曲目,这应该是可行的。

票数 1
EN

Stack Overflow用户

发布于 2020-09-06 06:20:03

是的,默认参数是limit=20。您可以使用以下代码设置更高的限制:

代码语言:javascript
复制
current_user_saved_tracks(limit=50)

或者你可以设置一个偏移量来获得接下来的20首曲目:

代码语言:javascript
复制
current_user_saved_tracks(offset=20)

来源:https://spotipy.readthedocs.io/en/2.14.0/?highlight=current_user_saved#spotipy.client.Spotify.current_user_saved_tracks

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63758953

复制
相关文章

相似问题

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