Groovy, jsououp, получить код статуса
-
26-12-2019 - |
Вопрос
Я надеюсь, что кто-то может помочь мне с этим, так как я ищу это, но не нашел ничего, что работает.
Я подключаюсь к ряду URL из списка, и все работает нормально, но тогда я начал получать ошибку 404 на некоторых, поэтому я хочу поймать ошибку, чтобы программа не прекращалась и продолжает проходить через списокURL.
Это ошибка, которую я получил
org.jsoup.HttpStatusException: HTTP error fetching URL. Status=404, URL=http:nameofthesite
.
Я использую jsoup.connect, и ошибка вызвана в этой строке кода
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();
.
Как я могу изменить код, чтобы я мог получить код состояния. Я пробовал connection.rusponse (что-то я нашел на этом сайте как решение для такого рода проблем), но я получал ошибку литья
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){
.
Но я получаю следующую ошибку
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;)
.
Любая помощь будет оценена, спасибо.
Решение
Есть опечатка в вашем коде:
Connection.response response = Jsoup.connect(...) ...
// ^
// |
.
Response
- это статический класс (интерфейс, который должен быть правильным) генеракодицетагкода, поэтому просто измените свой код:
Connection.Response response = Jsoup.connect(...) ...
.