Pregunta

Espero que alguien pueda ayudarme con esto, ya que lo he estado buscando, pero no encontré nada trabajando.

Estoy conectando a una serie de URL de una lista y todo funciona bien, pero luego comencé a obtener un error 404 en algunos, por lo tanto, ahora quiero tomar el error para que el programa no termine y siga pasando por la lista.URLs.

Este es el error que tengo

org.jsoup.HttpStatusException: HTTP error fetching URL. Status=404, URL=http:nameofthesite

Estoy usando jsoup.connect y el error se debe a esta línea de código

    Document doc= Jsoup.connect(countryUrl[i2]).timeout(10*1000)                      
    .userAgent("Mozilla/5.0 (Windows NT 6.0) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.46 Safari/536.5")
    .get();

¿Cómo puedo cambiar el código para que pueda obtener el código de estado? He intentado Connection.Response (algo que encontré en este sitio como una solución para este tipo de problema) pero estaba recibiendo un error de casting

 Connection.response  response= Jsoup.connect(countryUrl[i2]).timeout(10*1000)                      
            .userAgent("Mozilla/5.0 (Windows NT 6.0) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.46 Safari/536.5")
            .execute();
            int statusCode = response.statusCode();
            if(statusCode==200){

pero obtengo el siguiente error

groovy.lang.MissingMethodException: No signature of method: static org.jsoup.Connection.response() is applicable for argument types: (org.jsoup.helper.HttpConnection$Response) values: [org.jsoup.helper.HttpConnection$Response@c7325ae]
Possible solutions: respondsTo(java.lang.String), respondsTo(java.lang.String, [Ljava.lang.Object;)

Se apreciará cualquier ayuda, gracias.

¿Fue útil?

Solución

Hay un error tipográfico en su código:

Connection.response response = Jsoup.connect(...) ...
//         ^
//         |

Response es una clase estática (interfaz para ser correcta) de Connection, así que solo cambia tu código:

Connection.Response response = Jsoup.connect(...) ...

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top