Mechanize/Ruby读取404页面的源代码

6ft*_*Dan 3 mechanize http-status-code-404

我正在做的就是加载机械化,并获得一个返回404的页面.但这正是我想要的.404页面有很多我想在我的例子中使用的HTML.

a = mechanize.new
a.get('http://www.youtube.com/watch?v=e4g8jriw4rg')
a.page
=> nil
Run Code Online (Sandbox Code Playgroud)

我似乎无法找到任何进一步的信息.

pgu*_*rio 11

您需要处理异常:

begin
  page = a.get 'http://www.youtube.com/watch?v=e4g8jriw4rg'
rescue Mechanize::ResponseCodeError => e
  puts e.response_code # the status code as a string, e.g. "404"
  page = e.page
end

puts page.title
Run Code Online (Sandbox Code Playgroud)