OpenURI::HTTPError: 403 Forbidden

本秂侑毒 提交于 2019-12-07 06:37:06

问题


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:


I've solved changing

Hpricot.XML(open(url))

in

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

In the mediawiki.rb file




回答2:


Yes it works.

The same for Nokogiri 403 Forbidden problems

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



来源:https://stackoverflow.com/questions/2305975/openurihttperror-403-forbidden

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!