我正在使用 Nokogiri 来抓取一个可以正常工作的网页,除非该页面有重定向循环。
所以当我抓取这个网站时:https://www.cardcomplete.com/besuchen-isie-uns-auf-facebook/ https://www.cardcomplete.com/besuchen-isie-uns-auf-facebook/
我收到这个错误
/home/balint/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/open-uri.rb:224:in open_loop': redirection forbidden: https://www.cardcomplete.com/besuchen-isie-uns-auf-facebook/ -> http://www.facebook.com/cardcomplete (RuntimeError)
但是当我尝试抓取这个网站时,我得到了同样的错误,但现在它被重定向到 Facebook 页面的 https 版本:
/home/balint/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/open-uri.rb:224:in `open_loop': redirection forbidden: http://www.facebook.com/cardcomplete -> https://www.facebook.com/cardcomplete (RuntimeError)
当然,抓取 https 版本的 Facebook 页面是可行的。
我安装了这个 open_uri_redirects https://github.com/open-uri-redirections/open_uri_redirectionsgem 适用于 facebook http->https 重定向,但不适用于第一个链接:
doc = Nokogiri::HTML(open('https://www.cardcomplete.com/besuchen-isie-uns-auf-facebook/', :allow_redirections => :safe))
怎么解决这个问题呢?
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)