Пишу парсер, учусь, вот код:
public class TP {
public static Document getPage() throws MalformedURLException, IOException {
String url = "https://steamcommunity.com/market/";
Document page = (Jsoup.parse(new URL(url), 3000));
return page;
}
public static void main(String[] args) throws MalformedURLException, IOException {
TM();
}
public static void TM() throws MalformedURLException, IOException {
Document page = getPage();
for (int i = 0; i <= 3; i++) {
page = Jsoup.connect("https://steamcommunity.com/market/search?appid=570#p"+i+"_popular_desc").get();
Element allPage = page.selectFirst("div[id=mainContents]");
Elements weap = allPage.select("a[class=market_listing_row_link]");
for (Element data : weap) {
String name = data.select("span[class=market_listing_item_name]").text();
String quantity = data.select("div[class=market_listing_right_cell market_listing_num_listings]").text();
String price = data.select("span[class=market_table_value normal_price]").text();
System.out.println(name + " " + quantity + " " + price );
}
}
}
}
Использовал этот же способ для перехода по страницам с другим сайтом - все работало, с этим почему-то просто несколько раз повторяются данные с одной страницы (в данном случае 3 раза), а не парсится последовательно 3 страницы, как должно быть
https://steamcommunity.com/market/search?appid=570#p0_popular_desc
возвращает пустую страницу, отсчёт необходимо выполнять с i = 1
for (int i = 1; i <= 3; i++)
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости