2008-10-09 8 views
11

http에서 나오는 mp3 스트림을 캡처하여 파이썬으로 디스크에 저장하는 가장 좋은 방법은 무엇입니까?어떻게 파이썬으로 mp3 스트림을 캡처합니까?

은 지금까지 나는이 나에게 데이터를 제공하지만, MP3 플레이어에서의 왜곡이나 습관 플레이

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

을 시도했습니다.

+0

당신은 더 많은 정보를 지정할 수 있습니까? 어떤 종류의 스트리밍입니까? 일반 mp3 ('다른 이름으로 저장 ...'을 사용하여 저장할 수도 있습니까?) 그렇지 않다면, 프로토콜은 단지 오디오 정보보다 더 많은 정보를 가지고 있습니다. –

+0

이것은 궁극적으로 작동했지만 while 절을 종료하지 않았습니다. 코드가 제대로 끝나기 위해 코드를 추가해야합니까? – ChrisArmstrong

답변

15

Windows 사용자는 실수로 CRLF 변환을 수행하여 이진 데이터를 손상시킬 수 있습니다. 바이너리 모드로 target을 열어보십시오 : 이것에 대한

target = open(target_path, "wb") 
4

가장 좋은 방법은 다음과 같습니다

urllib.urlretrieve(stream_url, target_path); 
관련 문제