2013-05-06 67 views
6

Tôi lấy một danh sách các bài hát từ API SoundCloud bằng cách sử dụng các truy vấn sau đây để lấy 5 ca khúc phổ biến nhất:Sắp xếp theo phát lại khi lấy nhạc từ SoundCloud

https://api.soundcloud.com/tracks?client_id=XXX&order=hotness&limit=5

Nhưng gần đây SoundCloud removed the hotness order. Trong bài đăng trên blog, họ nói rằng các bản nhạc có thể được sắp xếp theo playback_count. Nhưng điều này có thể được thực hiện trong các truy vấn hoặc làm họ đề nghị tôi kéo xuống toàn bộ thư viện SoundCloud và đặt chúng trong khách hàng? Sau đây dường như không làm việc:

https://api.soundcloud.com/tracks?client_id=XXX&order=playback_count&limit=5

Vậy làm thế nào người ta sẽ lấy ca khúc hàng đầu trên SoundCloud?

+0

Tôi nhận thấy điều này quá. Rất phiền phức! – Ben

Trả lời

4

Giải pháp là sử dụng các cuộc gọi không có giấy tờ cho tính năng khám phá mà chính SoundCloud sử dụng (tôi đã sử dụng công cụ dev trong Chrome để kiểm tra các cuộc gọi AJAX).

https://api.soundcloud.com/explore/sounds/category?limit=L&client_id=XXX

này dường như sử dụng một số loại phân loại trên sự phổ biến của các bài hát. Các bài hát sau đó có thể được lọc chỉ trên nhạc bằng cách kiểm tra thuộc tính "nhóm". sau đó tôi phải giải quyết danh sách các ID bài hát thực tế mà có thể được thực hiện với sự (văn bản, chính thức) gọi API:

https://api.soundcloud.com/tracks?ids=1,2,3&client_id=XXX

Điều này dường như làm việc một cách hoàn hảo và tôi cũng có được lợi ích bổ sung một thậm chí phân phối giữa các thể loại. Nhưng tất nhiên, điều này có thể ngừng hoạt động bất cứ lúc nào vì các cuộc gọi API không có giấy tờ và có lẽ không có nghĩa là để sử dụng công cộng.

+1

Thật thú vị. Tuy nhiên, tôi nhận được 401 - Không được phép kể từ chiều nay – Ben

+0

Bạn có nhớ bao gồm client_id của mình không? –

+0

Xin lỗi vì đã dày đặc, nhưng khi bạn thực hiện cuộc gọi đến https://api.soundcloud.com/explore/sounds/category?giới hạn = L & client_id = XXX, bạn đã sử dụng một sdk soundcloud để làm như vậy, hoặc bạn đã sử dụng một cái gì đó như curl? – ChrisArmstrong

0

kiểm tra tại đây, đơn đặt hàng bị xóa bởi soundcloud theo số hotness.

Has order by hotness been removed from Soundclouds API

như vậy, bây giờ, chỉ order by date là có thể.

+0

Bạn đã thấy rằng tôi đã liên kết với bài đăng trên blog của họ nơi họ thông báo rằng, phải không? –

4

Chỉ muốn cung cấp bản cập nhật. Có vẻ như soundcloud đã chuyển sang v2 của cuộc gọi API khám phá.

Sử dụng này để có được một danh sách các loại:
https://api.soundcloud.com/explore/v2

Và đây để có được bài hát từ danh mục:
https://api-v2.soundcloud.com/explore/metal?limit=10&offset=0

Cho đến nay nó dường như không có chìa khóa, mặc dù tôi không có ý tưởng bao lâu sẽ kéo dài.

EDIT: Vậy url thứ 2 dường như không cho phép chéo xuất xứ, nhưng cho đến nay này không làm việc, mặc dù nó chỉ trả về TrackID không đầy đủ các thông tin

https://api.soundcloud.com/explore/v2/metal?limit=50&consumer_key=XXX

Các vấn đề liên quan