#!/usr/bin/ruby require 'net/http' require 'uri' url='https://www.wis-jma.go.jp/' uri=URI.parse(url) time1=Time.now r=16 1.times do begin http=Net::HTTP.new(uri.host,uri.port) http.use_ssl=(uri.scheme=='https') # タイムアウト時間設定 http.open_timeout=100 http.read_timeout=100 request=Net::HTTP::Get.new(uri.request_uri) response=http.request(request) # 結果判定 case response.code.to_i when 301 raise "double redicetion" if url.nil? loc=response['location'] uri=URI.join(url,loc) url=nil redo # do に戻る when 200 time2=Time.now printf("%6.3f\n", time2-time1) r=0 else puts "Response #{response.code}" end rescue Net::OpenTimeout puts "505" rescue Net::ReadTimeout puts "515" rescue => e puts "525" STDERR.puts "exception #{e.message}" end end exit r