Kueri Soundcloud API menggunakan filter create_at

Apakah mungkin menggunakan filter create_at sebagai bagian dari kueri dengan Python? Saya menambahkannya ke filter kueri saya, mencoba beberapa cara berbeda, tetapi tampaknya mengabaikan filter tertentu. Hasil yang muncul berisi semuanya dari minggu lalu hingga 3 tahun yang lalu, dan saya hanya mencari lagu terbaru. Saya harus percaya ini bisa dilakukan entah bagaimana...

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')

Saya juga mencoba memasukkan stempel tanggal waktu secara langsung alih-alih sebagai variabel, dengan hasil yang sama. Apakah saya hanya merusak kode di suatu tempat di sini? Atau bisakah Anda benar-benar tidak menentukan tanggal create_at untuk hasil kueri Anda?


person Rob M    schedule 06.07.2013    source sumber


Jawaban (1)


Ya! Dimungkinkan untuk menggunakan filter create_at sebagai bagian dari kueri dengan Python.

Saya tidak tahu bagaimana SoundCloud API memprioritaskan setiap filter, jadi mungkin saja menambahkan lebih banyak filter dapat memberikan hasil yang tidak diharapkan.

Membatasi filter hanya pada filter {query, Created_at} akan menghasilkan hasil yang Anda inginkan.

# 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
person mizuhands    schedule 13.07.2013
comment
Namun, stackoverflow.com/questions/22051649/ menyiratkan penggunaan stempel tidak akan berhasil. - person Martin Cleaver; 06.09.2014