From: Brian Candler Date: 2009-01-14T18:30:13+09:00 Subject: Re: Downloading an MP3 from the internet Nathaniel Escribano wrote: > require 'net/http' > > Net::HTTP.start("cdn.stereogum.com") { |http| > resp = http.get("/mp3/My Morning Jacket - Celebration (Live).mp3") > open("Celebration.mp3", "wb") { |file| > file.write(resp.body) > } > } > puts "the song has been downloaded" Here is an alternative way of doing it: require 'open-uri' open("http://cdn.stereogum.com/mp3/My Morning Jacket - Celebration (Live).mp3") do |src| open("Celebration.mp3","wb") do |dst| while blk = src.read(65536) dst.write(blk) end end end This gives a clear error: /usr/lib/ruby/1.8/uri/common.rb:436:in `split': bad URI(is not URI?): http://cdn.stereogum.com/mp3/My Morning Jacket - Celebration (Live).mp3 (URI::InvalidURIError) Fix the URI and it works: ... open("http://cdn.stereogum.com/mp3/My%20Morning%20Jacket%20-%20Celebration%20%28Live%29.mp3") do |src| ... -- Posted via http://www.ruby-forum.com/.