Last.fm api无效方法

时间:2010-12-06 03:20:27

标签: python api last.fm

我正在尝试编写一个python脚本来对Last.fm进行查询,但是我一直收到一个无效的方法错误。

我不希望链接到预先编写的last.fm python库,我试图将其作为“测试我知道的”项目。提前谢谢!

import urllib
import httplib

params = urllib.urlencode({'method' : 'artist.getsimilar',
               'artist' : 'band',
               'limit' : '5',
               'api_key' : #API key goes here})

header = {"user-agent" : "myapp/1.0"}

lastfm = httplib.HTTPConnection("ws.audioscrobbler.com")

lastfm.request("POST","/2.0/?",params,header)

response = lastfm.getresponse()
print response.read()

2 个答案:

答案 0 :(得分:2)

您的请求缺少内容类型“application / x-www-form-urlencoded”。这有效:

import urllib
import httplib

params = urllib.urlencode({'method' : 'artist.getsimilar',
               'artist' : 'band',
               'limit' : '5',
               'api_key' : '#API key goes here'})

header = {"user-agent" : "myapp/1.0",
          "Content-type": "application/x-www-form-urlencoded"}

lastfm = httplib.HTTPConnection("ws.audioscrobbler.com")

lastfm.request("POST","/2.0/?",params,header)

response = lastfm.getresponse()
print response.read()

答案 1 :(得分:0)

Last.fm artist.getSimilar API方法不需要POST,可以使用GET完成。

只有更改数据的API方法才需要POST方法。