Open_uri.rb -- 500 Internal Server Error

Hello to all,
I am using 'open-uri' & 'pp' ruby library, to open url and gather some
data from given web page. But it throws following error

c:/ruby/lib/ruby/1.8/open-uri.rb:278:in `open_http': 500 Internal Server
Error (
OpenURI::HTTPError)
        from c:/ruby/lib/ruby/1.8/open-uri.rb:617:in `buffer_open'
        from c:/ruby/lib/ruby/1.8/open-uri.rb:164:in `open_loop'
        from c:/ruby/lib/ruby/1.8/open-uri.rb:162:in `catch'
        from c:/ruby/lib/ruby/1.8/open-uri.rb:162:in `open_loop'
        from c:/ruby/lib/ruby/1.8/open-uri.rb:132:in `open_uri'
        from c:/ruby/lib/ruby/1.8/open-uri.rb:519:in `open'
        from c:/ruby/lib/ruby/1.8/open-uri.rb:30:in `open'
        from openmyurl.rb:4

source code openurl.rb is like-----

require 'open-uri'
require 'pp'

open('http://www.aflatune.com/') do |f|
  # hash with meta information
  pp f.meta

···

#
  pp "Content-Type: " + f.content_type
  pp "last modified" + f.last_modified.to_s

  no = 1
  # print the first fifty lines
  f.each do |line|
    print "#{no}: #{line}"
    no += 1
    break if no > 50
  end
end

can any one give me solution to how to solve this problem?
--
Posted via http://www.ruby-forum.com/.

Vikas Gholap schrieb:

Hello to all,
I am using 'open-uri' & 'pp' ruby library, to open url and gather some
data from given web page. But it throws following error

c:/ruby/lib/ruby/1.8/open-uri.rb:278:in `open_http': 500 Internal Server
Error (
OpenURI::HTTPError)
        from c:/ruby/lib/ruby/1.8/open-uri.rb:617:in `buffer_open'
        from c:/ruby/lib/ruby/1.8/open-uri.rb:164:in `open_loop'
        from c:/ruby/lib/ruby/1.8/open-uri.rb:162:in `catch'
        from c:/ruby/lib/ruby/1.8/open-uri.rb:162:in `open_loop'
        from c:/ruby/lib/ruby/1.8/open-uri.rb:132:in `open_uri'
        from c:/ruby/lib/ruby/1.8/open-uri.rb:519:in `open'
        from c:/ruby/lib/ruby/1.8/open-uri.rb:30:in `open'
        from openmyurl.rb:4

source code openurl.rb is like-----

require 'open-uri'
require 'pp'

open('http://www.aflatune.com/'\) do |f|
  # hash with meta information
  pp f.meta

  #
  pp "Content-Type: " + f.content_type
  pp "last modified" + f.last_modified.to_s

  no = 1
  # print the first fifty lines
  f.each do |line|
    print "#{no}: #{line}"
    no += 1
    break if no > 50
  end
end

can any one give me solution to how to solve this problem?

looks like the aflatune-Webserver throws a 500 error if no User-Agent is set.

this works for me:
   open('http://www.aflatune.com/', 'User-Agent'=>'ruby')