Как захватить mp3-поток с помощью python

Какой лучший способ захватить mp3-поток, исходящий из http, и сохранить его на диск с помощью python?

До сих пор я пробовал

target = open(target_path, "w")
conn = urllib.urlopen(stream_url)
while True:
    target.write(conn.read(buf_size))

Это дает мне данные, но их искаженные или привычные игры в mp3-плеерах.

Ответ 1

Если вы работаете в Windows, вы можете случайно сделать конверсии CRLF, развращая двоичные данные. Попробуйте открыть target в двоичном режиме:

target = open(target_path, "wb")

Ответ 2

Лучший способ для этого:

urllib.urlretrieve(stream_url, target_path);