views:

452

answers:

2

Hi, i'm using wikipedia-api plugin for get content's pages from wikipedia. From some days i receive this error when i try to get the contents:

  page = Wikipedia.find_by_titles('Foo')
OpenURI::HTTPError: 403 Forbidden
    from /usr/lib/ruby/1.8/open-uri.rb:277:in `open_http'
    from /usr/lib/ruby/1.8/open-uri.rb:616:in `buffer_open'
    from /usr/lib/ruby/1.8/open-uri.rb:164:in `open_loop'
    from /usr/lib/ruby/1.8/open-uri.rb:162:in `catch'
    from /usr/lib/ruby/1.8/open-uri.rb:162:in `open_loop'
    from /usr/lib/ruby/1.8/open-uri.rb:132:in `open_uri'
    from /usr/lib/ruby/1.8/open-uri.rb:518:in `open'
    from /usr/lib/ruby/1.8/open-uri.rb:30:in `open'
    from /home/luca/Programming/nerto_5/vendor/plugins/wikipedia-api/lib/mediawiki.rb:139:in `get_xml'

What is that?

How can i do?

thanks

+1  A: 

I've solved changing

Hpricot.XML(open(url))

in

  Hpricot.XML(open(url, 'User-Agent' => 'ruby'))

In the mediawiki.rb file

Luca Romagnoli
A: 

Yes it works.

The same for Nokogiri 403 Forbidden problems

doc = Nokogiri::HTML(open(site, 'User-Agent' => 'ruby'))