获取流网址会引发404

时间:2014-09-20 17:18:30

标签: python soundcloud

获取永久跟踪网址的跟踪(从网站复制):

client = soundcloud.Client(client_id = xxx)
track = client.get('/resolve', url = 'http://soundcloud.com/igapromotion/u2-the-miracle-of-joey-ramone')

返回的曲目将'sharing'设置为'public','streamable'产生True。

解析流网址:

stream_url = client.get(track.stream_url, allow_redirects=False)

这会导致错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  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 "/home/pi/.local/lib/python2.7/site-packages/requests/models.py", line 795, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 404 Client Error: Not Found

这适用于大多数曲目,但不是全部。

1 个答案:

答案 0 :(得分:0)

我发布了一个错误。此处描述了一种解决方法:Soundcloud API - Why are stream_urls for a particular artist not working anymore (404)

在python代码中:

stream_url = client.get('/i1/tracks/' + str(track.id) + '/streams?client_id=' + client_id).rtmp_mp3_128_url