2017-08-12 63 views
1

當撥打Genius API(音樂歌詞服務)搜索功能以按標題搜索特定歌曲時,我的GET請求被成功處理並返回HTTP狀態碼200 ,但JSON響應不會返回我搜索的歌曲。Genius API搜索結果成功但沒有匹配

{u'meta': {u'status': 200}, u'response': {u'hits': []}} 

注意hit命令鍵的值是一個空數組。這很奇怪,因爲當使用相同的OAuth2訪問令牌在Genius API Docs站點https://docs.genius.com/#web_pages-h2上「測試」相同的調用時,我可以在同一搜索中獲得10次匹配。我試過用相同的結果搜索多首歌曲。

我使用Python 2.7.12,我替換的accessToken我的API調用訪問令牌下面,所以我不共享該公開(雖然我是用正確的訪問令牌測試)

#!/usr/bin/env python 
# -*- coding=utf-8 -*- 
import requests 

baseUrl = "http://api.genius.com" 

headers = {'Authorization': 'Bearer AccessTOKEN'} 
searchUrl = baseUrl + "/search" 
songTitle = "Shelter" 
data = {'q': songTitle} 
response = requests.get(searchUrl, data=data, headers=headers) 
json = response.json() 
print json 

有任何想法嗎?

回答

0

data參數用於發佈數據(POST請求)。由於這是一個GET請求,您應該將您的data傳遞給params patameter。

response = requests.get(searchUrl, params=data, headers=headers)