Использование Jsoup для последовательного соединения двух URL - PullRequest
0 голосов
/ 05 ноября 2018

Я пытаюсь получить все изображения в этой Категории с разрешением 1080 x 1920.

Мой выпуск:

Если я впервые захожу на сайт, сайт отображает все изображения со всеми разрешениями.

НО Если я хочу, чтобы он отображал только изображения с разрешением 1080 x 1920, я должен получить доступ к этому Фильтру 1080x1920 FIRST , после этого Категория отображает все изображения с нужным мне разрешением.

Сначала я попытался получить доступ к Filter 1080x1920 и получить файлы cookie для его использования в Категории :

@Override
        protected List<Wallpaper> doInBackground(final Integer... integers) {
            try {
                firstPage = Jsoup.connect(getResources().getString(R.string.AllRequest))
                        .method(Connection.Method.POST)
                        .execute();
                Map<String, String> Cookies = firstPage.cookies();
                doc = Jsoup.connect(URL + "?page=" + integers[0])
                        .cookies(Cookies)
                        .get();
            } catch (IOException e) {
                e.printStackTrace();
            }
            if (doc != null) {
                Elements newsHeadlines = doc.select("div.item-element");
                for (Element headline : newsHeadlines) {
                    String thumb = headline.select("a").select("img").attr("src");
                    String title = headline.select("a").select("img").attr("title");
                    Wallpaper wallpaperInfo = new Wallpaper();
                    wallpaperInfo.setThumbnails(thumb);
                    wallpaperInfo.setTitle(title);
                    urls.add(wallpaperInfo);

                }
            }
            return urls;
        }

Сначала я хочу подключиться к Фильтру 1080x1920 , затем Категория . Не могли бы вы помочь мне?

Спасибо!

1 Ответ

0 голосов
/ 05 ноября 2018

Решил мою проблему с добавлением UserAgent

 try {
                firstPage = Jsoup.connect(getResources().getString(R.string.AllRequest)).userAgent("Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36").method(Connection.Method.GET).execute();
                Map<String, String> Cookies = firstPage.cookies();
                doc = Jsoup.connect(URL + "?page=" + integers[0]).cookies(Cookies).get();

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