0

使用soundcloud python 库上传曲目以与 Soundcloud api 交互时遇到一些问题。

错误日志:

Traceback (most recent call last):
  File "uploadToSoundcloud.py", line 25, in <module>
    'asset_data': open('/home/jhvisser/Music/driveAt5_'+now.strftime("%y%m%d")+'.mp3', 'rb')
  File "/usr/local/lib/python2.7/dist-packages/soundcloud/client.py", line 130, in _request
    return wrapped_resource(make_request(method, url, kwargs))
  File "/usr/local/lib/python2.7/dist-packages/soundcloud/request.py", line 134, in make_request
    result.raise_for_status()
  File "/usr/local/lib/python2.7/dist-packages/requests/models.py", line 722, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.422 Client Error: Unknown Error

导致错误的代码。第 25 行指的是asset_data 行。

#Upload driveAtFive to SoundCloud
driveAtFive = client.post('/tracks', driveAtFive={
    'title': 'Drive at 5 - ' + now.strftime("%Y-%m-%d"),
    'sharing': 'public',
    'asset_data': open('/home/jhvisser/Music/driveAt5_'+now.strftime("%y%m%d")+'.mp3', 'rb')
})
4

1 回答 1

3

您需要传递track关键字参数。在这里,您将其命名driveAtFive为不正确的。将代码示例更改为:

driveAtFive = client.post('/tracks', track={
  'title': 'Drive at 5 - ' + now.strftime("%Y-%m-%d"),
  'sharing': 'public',
  'asset_data': open('/home/jhvisser/Music/driveAt5_'+now.strftime("%y%m%d")+'.mp3', 'rb')
})

让我知道这是否有帮助。

于 2013-09-30T20:31:15.207 回答