【问题标题】:Query Soundcloud API using created_at filter使用 created_at 过滤器查询 Soundcloud API
【发布时间】:2013-07-06 03:08:24
【问题描述】:

是否可以在 Python 中使用 created_at 过滤器作为查询的一部分?我将它添加到我的查询过滤器中,尝试了几种不同的方法,但它似乎忽略了那个特定的过滤器。返回的结果包含从上周到 3 年前的所有内容,我只是在寻找最近的曲目。我必须相信这是可行的......

stamp = "2013/07/01 09:24:50 +0000"

tracks = client.get('/tracks', q='Metallica', genre='', duration={
'from': 1800000
}, created_at={
'from': stamp
}, limit='5', tags='Metal')

我也试过直接输入日期时间戳而不是变量,结果相同。我只是在这里的某个地方搞砸了代码吗?或者您真的不能为查询结果指定 created_at 日期吗?

【问题讨论】:

    标签: python api search python-3.x soundcloud


    【解决方案1】:

    是的!可以在 Python 中将 created_at 过滤器用作查询的一部分。

    我不知道 SoundCloud API 如何确定每个过滤器的优先级,因此添加更多过滤器可能会导致意外结果。

    仅将过滤器限制为过滤器 {query, created_at} 会产生您想要的结果。

    # https://github.com/soundcloud/soundcloud-python
    import soundcloud 
    
    # Authentication
    CLIENT_ID = 'insert_client_id_here'
    client = soundcloud.Client(client_id=CLIENT_ID) 
    
    # Call GET request with parameters
    # excludes: {genres,tags,duration}
    # includes: {order,limit} for organization
    stamp = "2013/07/01 09:24:50 +0000"
    tracks = client.get('/tracks',
                    q='Metallica',
                    created_at= {'from': stamp},
                    order='created_at', 
                    limit=5, 
                    )
    
    # Print the results
    for i, v in enumerate(tracks):
        print i, v.title, v.created_at
    

    【讨论】:

    猜你喜欢
    • 2012-04-10
    • 1970-01-01
    • 1970-01-01
    • 2012-05-23
    • 2013-04-01
    • 1970-01-01
    • 2018-05-08
    • 1970-01-01
    相关资源
    最近更新 更多