Задать вопрос

Как корректно получить Cookies в Java?

Здравствуйте! У меня есть код который исправно получает куки с сайта и сохраняет в файле, кода я запускаю его из среды разработки:
String url = "https://www.avito.ru";
Map<String, String> cookies = Jsoup.connect(url).execute().cookies();
                ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(file));
                out.writeObject(cookies);
                System.out.println("Get cookies from: " + url + " and write into: " + file.getName());
                System.out.println(cookies);
                out.close();

Но когда я заливаю и запускаю его на сервере Heroku (только теперь куки временно храню в хендлере), мне в логах пишет ошибку.
Возникает она на шаге .execute()
Код залитый на хероку:
try {
                            Map <String, String> cookies = Jsoup.connect(url)
                                    .execute()
                                    .cookies();
                            cookieHandler.setAvitoCookies(cookies);
                            System.out.println("> AVITO COOKIE:" + cookies); 
                        } catch (IOException e) {
                            e.printStackTrace();
                        }


Лог ошибки с хероку:
org.jsoup.HttpStatusException: HTTP error fetching URL. Status=403, URL=https://www.avito.ru

В чем проблема?
  • Вопрос задан
  • 646 просмотров
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 1
@protven
Проблема в вас. В логе вполне понятная ошибка. Погуглите что значит http 403 и подумайте почему сайт, который постоянно пытаются парсить вернул ее на запрос от вашего робота.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Сбер Москва
от 300 000 до 350 000 ₽
DIGITAL SECTOR Краснодар
от 250 000 до 450 000 ₽
Сбер Санкт-Петербург
До 350 000 ₽