2008-10-09 29 views
11

Cách tốt nhất để ghi lại một dòng mp3 sắp tắt của http và lưu nó vào đĩa bằng python là gì?Làm cách nào để chụp một dòng mp3 bằng python

Như vậy đến nay tôi đã cố gắng

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

này mang lại cho tôi dữ liệu nhưng chơi bị cắt xén hoặc sẽ không của nó trong máy nghe nhạc mp3.

+0

bạn có thể chỉ định thêm thông tin? Loại truyền phát nào? Plain mp3 (bạn có thể lưu nó bằng 'Save as ...') không? Nếu không, giao thức có nhiều thông tin hơn trong đó, chứ không chỉ là thông tin âm thanh. –

+0

điều này cuối cùng đã làm việc, nhưng nó không bao giờ thoát khỏi mệnh đề trong khi. Tôi có cần phải thêm mã bổ sung để nó hoàn thành đúng không? – ChrisArmstrong

Trả lời

15

Nếu bạn đang sử dụng Windows, bạn có thể vô tình đang thực hiện chuyển đổi CRLF, làm hỏng dữ liệu nhị phân. Thử mở target trong chế độ nhị phân:

target = open(target_path, "wb") 
4

Cách tốt nhất cho điều này là:

urllib.urlretrieve(stream_url, target_path); 
Các vấn đề liên quan