我使用RubyGem (DeathByCaptcha),使HTTP调用deathbycaptcha.com。HTTP请求经常超时或由于其他未知原因而失败,我的Ruby脚本会异常退出。我试图自动重复此方法("decode")的实例,我试图确定是否有一种方法可以防止此方法中的错误退出整个脚本。
编辑:因为我一定会在这里被火了,我要提前提一下,这是为了确定不同的验证码选项的有效性在我的网站的注册页面与常见的验证码破坏者,因为我有垃圾邮件注册的问题。
如何防止异常退出脚本
tries = 0
begin
# risky failing code
rescue
sleep(1) # sleep n seconds
tries += 1
retry if tries <= 3 # retry the risky code again
end
您需要捕获所引发的异常并以某种方式处理它。
您正在寻找类似
的内容begin
# Send HTTP request
rescue WhateverExceptionClassYouGet > error
# Do something with the error
end