2013-06-10 1 views
2

grooveshark API를 사용하고 있으며 url에서 sondId를 찾고 싶습니다.URL에서 grooveshark songId 받기

http://grooveshark.com/#!/album/Sexplosive+Locomotive/3624474 
http://grooveshark.com/album/Sexplosive+Locomotive/3624474 
http://grooveshark.com/#!/playlist/Punish+Yourself/58054955 
http://grooveshark.com/playlist/Punish+Yourself/58054955 

: ID를 직접적으로 앨범과 재생 목록 URL에 displayeds 달리,

2IsoC7 

그러나 :

http://grooveshark.com/#!/s/T4+Song/2IsoC7?src=5 

내가 URL에서 "ID"를 추출 : 그래서 내가 URL을했습니다 나는 어떻게 노래를 찾았는지 모르겠다. 나는 ... 시도했다. getSongIDFromTinysongBase62하지만 작동하지 않는다.

grooveshark API로 songID를 결정하는 방법은 무엇입니까? 감사 !

답변

3

공식 API 문서에는 포함되지 않은 Grooveshark 메서드가 있지만 비공식 API를 문서화하고 이러한 메서드가 포함되어있는 fewrepos이 있습니다. 찾고있는 방법은 getSongFromToken입니다.

매개 변수로 countrytoken이 필요합니다 (token"2IsoC7"입니다). header.client"htmlshark"으로 설정해야합니다.

curl 'http://grooveshark.com/more.php?getSongFromToken' -H 'Content-Type: text/plain' --data-binary '{"header":{"client":"htmlshark","clientRevision":"20130520","uuid":"[YOUR-UUID]","session":"[YOUR-SESSION]","token":"[YOUR-SESSION-TOKEN]"},"method":"getSongFromToken","parameters":{"token":"fESpf","country":{"ID":223,"CC1":0,"CC2":0,"CC3":0,"CC4":1073741824,"DMA":534,"IPR":0}}}' 

당신이처럼 보이는 뭔가를 제공해야합니다 :

"header": { 
    "session":"[YOUR-SESSION]", 
    "serviceVersion":"20100903", 
    "prefetchEnabled":true 
}, 
"result": { 
    "SongID":"25134723", 
    "Name":"T4 Song", 
    "Flags":"0", 
    "EstimateDuration":"227", 
    "AlbumID":"3624474", 
    "AlbumName":"Sexplosive Locomotive", 
    "CoverArtFilename":"3624474.jpg", 
    "ArtistName":"Punish Yourself", 
    "ArtistID":"249162" 
} 

불행하게도 이러한 변수 중 일부는 제대로 이름이 조금 있습니다을

다음은 샘플 컬을 요청합니다. token 안에있는 header이 세션 토큰입니다. token 안에있는 parameters은 찾고있는 노래의 ID입니다.

희망 하시겠습니까?