Http error fetching url status 404 url

I am new with Jsoup but I can't understand why I receive a 404 error when trying to obtain a page, even if the page is accessible from browser and I don't use any proxys. I have tried with the foll...

I am new with Jsoup but I can’t understand why I receive a 404 error when trying to obtain a page, even if the page is accessible from browser and I don’t use any proxys. I have tried with the following code:

private static Document connect() {
    String url = "http://www.transfermarkt.co.uk/real-madrid/startseite/verein/418";
    Document doc = null;
    try {
        doc = Jsoup.connect(url).get();
    } catch (NullPointerException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (HttpStatusException e) {
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return doc;
}

and I receive the exception message:

org.jsoup.HttpStatusException: HTTP error fetching URL. Status=404, URL=http://www.transfermarkt.co.uk/real-madrid/startseite/verein/418
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:449)
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:424)
at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:178)
at org.jsoup.helper.HttpConnection.get(HttpConnection.java:167)
at ro.pago.ucl2015.UCLWebParser.connect(UCLWebParser.java:27)
at ro.pago.ucl2015.UCLWebParser.main(UCLWebParser.java:16)

asked Jun 29, 2014 at 11:50

mawus's user avatar

mawusmawus

1,1601 gold badge11 silver badges25 bronze badges

It seems that the site doesn’t allow bots and it will throw a
404 error response in case it doesn’t locate the User-Agent headers.
The below works as it sets the user agent headers

private static Document connect() {
    String url = "http://www.transfermarkt.co.uk/real-madrid/startseite/verein/418";
    Document doc = null;
    try {
        doc = Jsoup.connect(url)
               .userAgent("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0")
               .referrer("http://www.google.com")              
               .get();
    } catch (NullPointerException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (HttpStatusException e) {
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return doc;
}

User Agent

The Hypertext Transfer Protocol (HTTP) identifies the client software
originating the request, using a «User-Agent» header, even when the
client is not operated by a user.


Referrer (I don’t think this is necessary)

HTTP referer (originally a misspelling of referrer) is an HTTP header
field that identifies the address of the webpage (i.e. the URI or IRI)
that linked to the resource being requested.

Just to provide full service I would advise you to set the timeout period for your requests. The default is 3 seconds, if the server takes longer than that you will receive
an exception. Bellow follows your code with timeout setter. Set it to zero for the longest possible period.

private static Document connect() {
    String url = "http://www.transfermarkt.co.uk/real-madrid/startseite/verein/418";
    Document doc = null;
    try {
        doc = Jsoup.connect(url)
               .userAgent("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0")
               .referrer("http://www.google.com") 
               .timeout(1000*5) //it's in milliseconds, so this means 5 seconds.              
               .get();
    } catch (NullPointerException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (HttpStatusException e) {
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return doc;
} 

answered Jun 29, 2014 at 13:04

Alkis Kalogeris's user avatar

Alkis KalogerisAlkis Kalogeris

16.6k14 gold badges58 silver badges112 bronze badges

2

If in case you are getting response code 404 , you can skip that url

Use ignoreHttpErrors(true), will surely solve your problem

Document doc3 = null;
    try {
        doc3 = Jsoup.connect(url).userAgent("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0")
                .referrer("http://www.google.com").ignoreHttpErrors(true).get();

    } catch (NullPointerException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

answered Dec 8, 2015 at 16:43

Udit Kapahi's user avatar

Udit KapahiUdit Kapahi

2,2671 gold badge27 silver badges25 bronze badges

4

Вопрос:

Я новичок в Jsoup, но не могу понять, почему я получаю ошибку 404 при попытке получить страницу, даже если страница доступна из браузера, и я не использую прокси. Я пробовал со следующим кодом:

private static Document connect() {
String url = "http://www.transfermarkt.co.uk/real-madrid/startseite/verein/418";
Document doc = null;
try {
doc = Jsoup.connect(url).get();
} catch (NullPointerException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (HttpStatusException e) {
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return doc;
}

и я получаю сообщение об ошибке:

org.jsoup.HttpStatusException: HTTP error fetching URL. Status=404, URL=http://www.transfermarkt.co.uk/real-madrid/startseite/verein/418
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:449)
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:424)
at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:178)
at org.jsoup.helper.HttpConnection.get(HttpConnection.java:167)
at ro.pago.ucl2015.UCLWebParser.connect(UCLWebParser.java:27)
at ro.pago.ucl2015.UCLWebParser.main(UCLWebParser.java:16)

Лучший ответ:

Кажется, что сайт не разрешает ботов, и он
404, если он не находит заголовки User-Agent.
Ниже описано, как он устанавливает заголовки пользовательских агентов.

private static Document connect() {
    String url = "http://www.transfermarkt.co.uk/real-madrid/startseite/verein/418";
    Document doc = null;
    try {
        doc = Jsoup.connect(url)
               .userAgent("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0")
               .referrer("http://www.google.com")              
               .get();
    } catch (NullPointerException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (HttpStatusException e) {
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return doc;
}

Пользовательский агент

Протокол передачи гипертекста (HTTP) идентифицирует клиентское программное обеспечение исходя из запроса, используя заголовок “User-Agent”, даже если клиент не управляется пользователем.


Referrer (я не думаю, что это необходимо)

HTTP-референт (изначально опечатка referrer) – это HTTP-заголовок поле, которое идентифицирует адрес веб-страницы (то есть URI или IRI) которые связаны с запросом ресурса.

Чтобы обеспечить полный сервис, я бы посоветовал установить период ожидания для ваших запросов. Значение по умолчанию – 3 секунды, если сервер занимает больше времени, чем вы получите
исключение. Bellow следует за вашим кодом с тайм-аутом. Установите его на ноль в течение максимально возможного периода времени.

private static Document connect() {
    String url = "http://www.transfermarkt.co.uk/real-madrid/startseite/verein/418";
    Document doc = null;
    try {
        doc = Jsoup.connect(url)
               .userAgent("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0")
               .referrer("http://www.google.com") 
               .timeout(1000*5) //it in milliseconds, so this means 5 seconds.              
               .get();
    } catch (NullPointerException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (HttpStatusException e) {
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return doc;
} 

Ответ №1

Если в случае получения кода ответа 404 вы можете пропустить этот URL

Использовать ignoreHttpErrors (true), несомненно, решит вашу проблему.

Document doc3 = null;
try {
doc3 = Jsoup.connect(url).userAgent("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0")
.referrer("http://www.google.com").ignoreHttpErrors(true).get();

} catch (NullPointerException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

CKB03H0u

0 / 0 / 0

Регистрация: 06.02.2014

Сообщений: 45

1

27.02.2014, 21:15. Показов 6558. Ответов 14

Метки нет (Все метки)


Почему ошибка?org.jsoup.HttpStatusException: HTTP error fetching URL. Status=404,

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
public class findLinkClass {
 
    String domlink;
    ArrayList<String> strA = new ArrayList<String>();
    
    public findLinkClass(String str){
        
        this.domlink = str;
        strA.add(domlink);
    }
    
    
    public void iniLink(String link) throws IOException{
     
    Elements links = new Elements();
    Document doc = Jsoup.connect(link).get();
    links = doc.select("a[href]");
    
    
    
    
        for (Element linkE : links) {
            String str = linkE.attr("abs:href");
        
            if(str != null && stringBoll(str) && str.indexOf(domlink) != -1 && strA.size() < 100){
                
            
            strA.add(str);
            
            iniLink(str);
            }
           }
        
            
    }
    
private boolean stringBoll(String str){
    
    for(int i = 0; i < strA.size(); i++ ){
        if(strA.get(i).equals(str))
            return false;   
    }
    return true;
    
    
 
}
    
    
public String getStringList(int i) {
    return strA.get(i);
}
 
public int getSize(){
    
    return strA.size();
    
}
    
    
}

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

27.02.2014, 21:15

14

ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ

443 / 442 / 100

Регистрация: 14.10.2012

Сообщений: 1,146

Записей в блоге: 9

28.02.2014, 03:04

2

1) страницы по адресу нет
2) спарсили перед этим линк на несуществующую страницу
3) если вышеуказанное может иметь место быть — проверяйте страницу, чтобы она была всегда с кодом 200



0



0 / 0 / 0

Регистрация: 06.02.2014

Сообщений: 45

28.02.2014, 03:25

 [ТС]

3

Подскажите пожалуйста как реализовать проверку «200».



0



0 / 0 / 0

Регистрация: 06.02.2014

Сообщений: 45

05.03.2014, 21:42

 [ТС]

4

Ребят, тема актуальна. Как проверить ссылку на Статус = 403, 404?



0



Эксперт Java

4087 / 3821 / 745

Регистрация: 18.05.2010

Сообщений: 9,331

Записей в блоге: 11

05.03.2014, 22:17

5

Попробовать получить содержимое по ссылке. Если будет брошено исключение HttpStatusException в котором указан статус 403, или 404 — это ваш случай.



0



tankomaz

ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ

443 / 442 / 100

Регистрация: 14.10.2012

Сообщений: 1,146

Записей в блоге: 9

05.03.2014, 22:53

6

Лучший ответ Сообщение было отмечено CKB03H0u как решение

Решение

ну вот например, как говорит turbanoff,

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
    public static void main (String[] args) throws IOException {
        String str = "http://rambler.ru//";
        URL url = new URL(str);
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        try {
            connection.connect();
            int statusCode = connection.getResponseCode();
            System.out.println(statusCode);
        } catch (UnknownHostException e) {
            System.out.println("Host not found");
        }
 
    }

под каждый ексепшн статус-код найдите

Добавлено через 51 секунду
а что хоть парсим?



1



0 / 0 / 0

Регистрация: 06.02.2014

Сообщений: 45

05.03.2014, 23:13

 [ТС]

7

Вручную нужно проверять statusCode?
Парсим любой домен, который введут. Кста, может кто подсказать сайт, на котором не очень много ссылок? Для теста.



0



ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ

443 / 442 / 100

Регистрация: 14.10.2012

Сообщений: 1,146

Записей в блоге: 9

05.03.2014, 23:15

8

ограничитель сделайте, чтобы не больше 100 к примеру



0



CKB03H0u

0 / 0 / 0

Регистрация: 06.02.2014

Сообщений: 45

05.03.2014, 23:46

 [ТС]

9

Так и пробуем.
Могу ли я проверить находиться ли какой-то ресурс на ссылке? Например .jar .doc. .pdf.

Добавлено через 5 минут
Я пока так делаю. Но думаю это тупо!?

Java
1
if( str.charAt(str.length()-1) == 'c' && str.charAt(str.length()-2) == 'o' && str.charAt(str.length()-3) == 'd' && str.charAt(str.length()-4) == '.')



0



tankomaz

ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ

443 / 442 / 100

Регистрация: 14.10.2012

Сообщений: 1,146

Записей в блоге: 9

06.03.2014, 00:37

10

да, немного не камельфово

вот так получше явно будет

Java
1
2
3
4
5
        String docFile = "http://example.com//helloWorld.doc";
 
        if (docFile.endsWith(".doc")) {
            System.out.println("Its DOC file");
        }



1



0 / 0 / 0

Регистрация: 06.02.2014

Сообщений: 45

07.03.2014, 21:15

 [ТС]

11

Подскажите от чего зависит java.net.SocketTimeoutException ? Хост ограничивает?



0



ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ

443 / 442 / 100

Регистрация: 14.10.2012

Сообщений: 1,146

Записей в блоге: 9

07.03.2014, 23:25

12

если его «долбить» 100500 запросовсек — то вполне может быть да, временно блокирует вас как мелкого ддосера



0



0 / 0 / 0

Регистрация: 06.02.2014

Сообщений: 45

07.03.2014, 23:37

 [ТС]

13

Как я могу решить эту проблему? Замедлить запросы?



0



ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ

443 / 442 / 100

Регистрация: 14.10.2012

Сообщений: 1,146

Записей в блоге: 9

08.03.2014, 00:00

14

спарсили страницу — подождали секунду-вторую — спарсили вторую страницу…. Чем значения ближе к времени реального пользователя — тем меньше шансов, что сервер даст временную блокировку для вас.

з.ы. но понимайте так же, что это далеко не единственная причина данного исключения, даже банально может быть виноват интернет и т.д. и т.п.



0



0 / 0 / 0

Регистрация: 06.02.2014

Сообщений: 45

08.03.2014, 00:14

 [ТС]

15

А проследить какой имено ексепшен можно?



0



Содержание

  1. Ошибка 404
  2. 404 ошибка (http error 404) — что это значит?
  3. Как находить и мониторить код ошибки 404?
  4. Открывается только главная страница сайта, на внутренних страницах ошибка 404 или 500
  5. На хостинге Linux
  6. Ошибка 404
  7. 404 ошибка (http error 404) — что это значит?
  8. Как находить и мониторить код ошибки 404?
  9. Открывается только главная страница сайта, на внутренних страницах ошибка 404 или 500
  10. На хостинге Linux

Ошибка 404

В статье мы расскажем, что означает ошибка 404 на сайте. Также она может называться:

  • 404 page not found,
  • http error 404,
  • error 404.

Ниже мы опишем, почему возникает ошибка 404, а также как её отследить и исправить.

404 ошибка (http error 404) — что это значит?

Ошибка 404 page not found — это код ответа сервера. Что это значит?

Когда вы вводите адрес сайта, браузер запрашивает его стартовую страницу у сервера. Если сервер не может найти страницу, он сообщает об этом браузеру с помощью кода 404. Это сообщение отображается на экране пользователя в браузере.

Почему такое может произойти? Есть несколько возможных причин:

  1. Вы допустили ошибку при вводе адреса страницы или при открытии файла в браузере. Или браузеру не удалось найти IP-адрес сервера. Сервер не может найти и выдать данные потому, что вы дали ему неправильные «координаты». В таком случае вам достаточно просто исправить ошибку в URL-адресе, и вместо страницы с ошибкой 404 появятся искомые страница/файл.
  2. Данные (страница или файл) не размещены на сервере, или CMS неверно отвечает на запрос пользователя. В этом случае дело обстоит сложнее и быстро справиться с проблемой не получится. Чтобы устранить ошибку 404, определите, как создавался сайт, на котором обнаружена ошибка (на CMS или без использования CMS). От этого будет зависеть способ решения проблемы.

Мы рассмотрим, что делать с ошибкой 404 и как исправить.

На сайтах, созданных с использованием CMS, встречаются различные страницы с ошибкой 404 (http status 404). В зависимости от типа страницы с ошибкой различаются причины возникновения и пути решения проблемы:

  • Если вы видите на своём сайте стандартную ошибку 404 REG.RU:

В большинстве случаев проблема связана с отсутствием конфигурационного файла .htaccess. Как избавиться от ошибки 404? Создайте в корневой папке сайта пустой текстовый файл с расширением .htaccess и добавьте в него стандартные директивы для используемой CMS. Стандартные директивы приведены в статье: Файлы .htaccess для популярных CMS.

Важно: в панели управления cPanel файл .htaccess по умолчанию скрыт (т.е. он существует, но не виден). Следуйте инструкции, чтобы включить отображение файла. Затем сверьте его содержимое со стандартным.

Если файл .htaccess существует и его содержимое корректно, а ошибка 404 not found сохраняется, обратитесь в техническую поддержку.

  • Если вы видите иную страницу ошибки, которую отдает CMS сайта. Например:

Ошибка на WordPress

Пользовательская ошибка 404 not found

Возможно, страница не создана или не опубликована на этапе размещения сайта в админке CMS. Также ошибка может быть связана с формированием «человекопонятных» ЧПУ-ссылок с помощью SEO-плагинов. Чтобы избавиться от проблемы, необходимо обратиться к веб-разработчикам сайта или на тематические форумы, на которых представлена необходимая техническая информация (ошибка http 404).

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

Что означает это сообщение? Запрашиваемые страница/файл отсутствуют или размещены в неправильной папке (не в корневой папке сайта).

Что делать? Откройте корневую папку сайта в панели управления хостингом и проверьте, находятся ли в ней файлы вашего сайта.

  • Если искомые файлы отсутствуют, следуйте инструкции: Как загрузить файл в корневой каталог сайта? После размещения файлов в корневой папке ошибка 404 должна исчезнуть.
  • Если файлы существуют и находятся в корневой папке, обратитесь в техническую поддержку.

Как находить и мониторить код ошибки 404?

Если вы владелец сайта, вы можете найти страницы с ошибкой с помощью специальных сервисов. Самые популярные сервисы:

  • Яндекс.Вебмастер,
  • Google Search Console,
  • Screaming Frog.

Ниже мы описали, как работать с каждым из них.

Перейдите в раздел Индексирование — Страницы в поиске:

HTTP status 404 — что это

  1. Добавьте фильтр, при котором отобразятся результаты с ошибкой «404 page not found»:

Разверните блок Индекс и выберите Покрытие:

404 ошибка: что это

  1. Используйте фильтр, который покажет код ошибки 404. Для этого перейдите в раздел Сведения и кликните Отправленный URL не найден (ошибка 404):

Ошибка 404: что значит и как исправить

Откройте программу, введите ссылку на сайт и нажмите Start:

  1. Перейдите во вкладку Response Code. Из выпадающего списка выберите фильтр Client Error (4xx):

Открывается только главная страница сайта, на внутренних страницах ошибка 404 или 500

Рассмотрим, что значит и как исправить ошибку отображения внутренних страниц сайта (error 404 или 500). Причиной проблемы является отсутствие файла .htaccess (либо он пустой, либо в нем не хватает необходимых директив для работы CMS). Решить проблему может замена текущего файла .htaccess стандартным для данной CMS.

На хостинге Linux

Если у вас ISPmanager, проверьте, не включены ли Автоподдомены. Если они включены, отключите их, проверьте актуальность проблемы.

В остальных случаях для устранения внутренней ошибки 404 или 500, перейдите в корневую папку сайта: Как узнать корневую папку сайта
Создайте файл .htaccess (или замените его) со следующим содержимым:

Источник

Ошибка 404

В статье мы расскажем, что означает ошибка 404 на сайте. Также она может называться:

  • 404 page not found,
  • http error 404,
  • error 404.

Ниже мы опишем, почему возникает ошибка 404, а также как её отследить и исправить.

404 ошибка (http error 404) — что это значит?

Ошибка 404 page not found — это код ответа сервера. Что это значит?

Когда вы вводите адрес сайта, браузер запрашивает его стартовую страницу у сервера. Если сервер не может найти страницу, он сообщает об этом браузеру с помощью кода 404. Это сообщение отображается на экране пользователя в браузере.

Почему такое может произойти? Есть несколько возможных причин:

  1. Вы допустили ошибку при вводе адреса страницы или при открытии файла в браузере. Или браузеру не удалось найти IP-адрес сервера. Сервер не может найти и выдать данные потому, что вы дали ему неправильные «координаты». В таком случае вам достаточно просто исправить ошибку в URL-адресе, и вместо страницы с ошибкой 404 появятся искомые страница/файл.
  2. Данные (страница или файл) не размещены на сервере, или CMS неверно отвечает на запрос пользователя. В этом случае дело обстоит сложнее и быстро справиться с проблемой не получится. Чтобы устранить ошибку 404, определите, как создавался сайт, на котором обнаружена ошибка (на CMS или без использования CMS). От этого будет зависеть способ решения проблемы.

Мы рассмотрим, что делать с ошибкой 404 и как исправить.

На сайтах, созданных с использованием CMS, встречаются различные страницы с ошибкой 404 (http status 404). В зависимости от типа страницы с ошибкой различаются причины возникновения и пути решения проблемы:

  • Если вы видите на своём сайте стандартную ошибку 404 REG.RU:

В большинстве случаев проблема связана с отсутствием конфигурационного файла .htaccess. Как избавиться от ошибки 404? Создайте в корневой папке сайта пустой текстовый файл с расширением .htaccess и добавьте в него стандартные директивы для используемой CMS. Стандартные директивы приведены в статье: Файлы .htaccess для популярных CMS.

Важно: в панели управления cPanel файл .htaccess по умолчанию скрыт (т.е. он существует, но не виден). Следуйте инструкции, чтобы включить отображение файла. Затем сверьте его содержимое со стандартным.

Если файл .htaccess существует и его содержимое корректно, а ошибка 404 not found сохраняется, обратитесь в техническую поддержку.

  • Если вы видите иную страницу ошибки, которую отдает CMS сайта. Например:

Ошибка на WordPress

Пользовательская ошибка 404 not found

Возможно, страница не создана или не опубликована на этапе размещения сайта в админке CMS. Также ошибка может быть связана с формированием «человекопонятных» ЧПУ-ссылок с помощью SEO-плагинов. Чтобы избавиться от проблемы, необходимо обратиться к веб-разработчикам сайта или на тематические форумы, на которых представлена необходимая техническая информация (ошибка http 404).

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

Что означает это сообщение? Запрашиваемые страница/файл отсутствуют или размещены в неправильной папке (не в корневой папке сайта).

Что делать? Откройте корневую папку сайта в панели управления хостингом и проверьте, находятся ли в ней файлы вашего сайта.

  • Если искомые файлы отсутствуют, следуйте инструкции: Как загрузить файл в корневой каталог сайта? После размещения файлов в корневой папке ошибка 404 должна исчезнуть.
  • Если файлы существуют и находятся в корневой папке, обратитесь в техническую поддержку.

Как находить и мониторить код ошибки 404?

Если вы владелец сайта, вы можете найти страницы с ошибкой с помощью специальных сервисов. Самые популярные сервисы:

  • Яндекс.Вебмастер,
  • Google Search Console,
  • Screaming Frog.

Ниже мы описали, как работать с каждым из них.

Перейдите в раздел Индексирование — Страницы в поиске:

HTTP status 404 — что это

  1. Добавьте фильтр, при котором отобразятся результаты с ошибкой «404 page not found»:

Разверните блок Индекс и выберите Покрытие:

404 ошибка: что это

  1. Используйте фильтр, который покажет код ошибки 404. Для этого перейдите в раздел Сведения и кликните Отправленный URL не найден (ошибка 404):

Ошибка 404: что значит и как исправить

Откройте программу, введите ссылку на сайт и нажмите Start:

  1. Перейдите во вкладку Response Code. Из выпадающего списка выберите фильтр Client Error (4xx):

Открывается только главная страница сайта, на внутренних страницах ошибка 404 или 500

Рассмотрим, что значит и как исправить ошибку отображения внутренних страниц сайта (error 404 или 500). Причиной проблемы является отсутствие файла .htaccess (либо он пустой, либо в нем не хватает необходимых директив для работы CMS). Решить проблему может замена текущего файла .htaccess стандартным для данной CMS.

На хостинге Linux

Если у вас ISPmanager, проверьте, не включены ли Автоподдомены. Если они включены, отключите их, проверьте актуальность проблемы.

В остальных случаях для устранения внутренней ошибки 404 или 500, перейдите в корневую папку сайта: Как узнать корневую папку сайта
Создайте файл .htaccess (или замените его) со следующим содержимым:

Источник

Я получаю ошибку 404 при использовании Jsoup. Звонок Document doc = Jsoup.parse(url, 30000) и строка URL http://www.myland.co.il/%D7%9E%D7%97%D7%A9%D7%91-%D7%94%D7%A9%D7%A7%D7%99%D7%94
и URL-адрес отлично отображается в Chrome. Ошибка, которую я получаю, java.io.IOException: 404 error loading URL http://www.myland.co.il/vmchk/××ש×-×שק××

Есть идеи?

2 ответы

Не использовать parse()-метод для веб-сайтов, используйте connect() вместо. Таким образом, вы можете установить дополнительные параметры подключения.

final String url = "http://www.myland.co.il/%D7%9E%D7%97%D7%A9%D7%91-%D7%94%D7%A9%D7%A7%D7%99%D7%94";

Document doc = Jsoup.connect(url).get();

Однако проблема заключается в кодировке URL:

Exception in thread "main" org.jsoup.HttpStatusException: HTTP error fetching URL. Status=404, URL=http://www.myland.co.il/vmchk/××ש×-×שק××

Даже декодирование URL обратно на UTF-8 не решает это.

У вас есть «альтернативный» URL?

Создан 06 фев.

стараться decodeURL()

String url = "http://www.myland.co.il/%D7%9E%D7%97%D7%A9%D7%91-%D7%94%D7%A9%D7%A7%D7%99%D7%94";
Document doc = Jsoup.connect(url.decodeURL()).get();

Создан 05 июля ’17, 17:07

Не тот ответ, который вы ищете? Просмотрите другие вопросы с метками

java
url
jsoup

or задайте свой вопрос.

Понравилась статья? Поделить с друзьями:
  • Http error connect failed roblox
  • Http error connect fail roblox
  • Http error codes wiki
  • Http error codes iis
  • Http error codes detected during run