2013-10-27 3 views
2

Как мне обрабатывать ошибки на Jsoup, когда программа не может подключиться к веб-сайту?Обработка ошибок Jsoup, когда не удалось подключиться к веб-сайту

Например, что сайт не существует, и я хотел бы, чтобы напечатать сообщение об ошибке пользователю

Приведенный ниже код показывает, как я подключен к определенному веб-сайт, но то, что я хочу, что если сайт Безразлично Не существует, я хотел, чтобы он печатал сообщения об ошибках.

Document doc; 
try { 

    // need http protocol 
    doc = Jsoup.connect("https://forum.lowyat.net/user/OldSchoolJoke").get(); 

    // get page title 
    String title = doc.title(); 
    //System.out.println("title : " + title); 

    // get all links 
    Elements links = doc.select("div.postdetails"); 
    for (Element link : links) { 

     // get the value from href attribute 
        System.out.println("\nlink : " + link.attr("div")); 
     System.out.println("text : " + link.text()); 

    } 

} catch (IOException e) { 
    e.printStackTrace(); 
} 

ответ

1

Попробуйте это,

try{ 
    Connection.Response response = Jsoup.connect("https://asdasdasd.com") 
          .userAgent("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.21 (KHTML, like Gecko) Chrome/19.0.1042.0 Safari/535.21") 
          .timeout(10000) 
          .ignoreHttpErrors(true). 
          .execute(); 

    int statusCode = response.statusCode(); 
    if(statusCode == 200) { 
     Document doc = Jsoup.connect("https://asdasdasd.com").get(); 
     Elements links = doc.select("div.postdetails"); 
     for (Element link : links) { 
      // get the value from href attribute 
      System.out.println("\nlink : " + link.attr("div")); 
      System.out.println("text : " + link.text()); 
     } 
    } 
    else { 
     System.out.println("received error code : " + statusCode); 
    } 
} catch (IOException e) { 
    e.printStackTrace(); 
} 
+0

Могу ли я изменить на линии 'Документ DOC = connection.get()' в, например, 'Document док = Jsoup.connect (" https: // . asdasdasd.com ") получить();'? Потому что я получаю ошибку в 'connection.get()'. –

+0

Посмотреть отредактированное решение. Может быть, это полезно. – yilmazburk

Смежные вопросы