Se un sito Web restituisce un errore "503 servizio non disponibile", open-uri genera un'eccezione. Per esempio:Come posso gestire gli errori 503 con open-uri?
require 'open-uri'
open('http://www.google.co.uk/sorry/?continue=http://www.google.co.uk/search%3Fq%3Dhello%26oq%3Dhello%26ie%3DUTF-8')
# OpenURI::HTTPError: 503 Service Unavailable
# ...
Tuttavia, se si allora visita in un browser web, in realtà visualizza una pagina con un CAPTCHA e non un errore.
Come posso essere sicuro che open-uri non si limita a lanciare questa eccezione, ma in realtà gestisce la risposta e mi fornisce il contenuto della pagina?
Grazie! Ho letto la tua risposta alla domanda prima di modificarla, stavo leggendo le eccezioni e non dovrebbero essere utilizzate per condizioni comuni. Quindi sarebbe meglio usare net/http invece di open-uri in quanto significa che non devo usarne uno? –