我正在尝试获取分辨率为1080 x 1920的Category上的所有图像。
我的问题:
如果我是第一次导航到该站点,则该站点将显示所有分辨率的所有图像。
但是,如果我希望它仅显示分辨率为1080 x 1920的图像,则我应该访问此Filter 1080x1920 第一,之后{{3} }以我需要的分辨率显示所有图像。
我尝试过的是首先访问Category并在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;
}
我要先连接到Category,然后再连接Filter 1080x1920。 你能帮我吗?
谢谢!
答案 0 :(得分:0)
解决了我添加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();
}