Shop::Yandex::Market - Scraper produktów z Yandex.Market

Przegląd scrapera
Używając scrapera produktów Yandex market, możesz pobierać dane z karty produktu, zbierać bazę linków do produktów, śledzić dynamikę cen produktów, zmiany liczby sprzedawców, zbierać oceny ratingowe i liczbę opinii o produkcie, a także pobierać zdjęcia produktów.
Funkcjonalność A-Parser pozwala zapisywać ustawienia scrapowania do późniejszego wykorzystania (presety), ustawiać harmonogram scrapowania i wiele więcej. Możesz korzystać z automatycznego rozmnażania zapytań, podstawiania podzapytań z plików, generowania kombinacji alfanumerycznych i list, aby uzyskać maksymalną możliwą liczbę wyników.
Gromadzone dane

- Nazwa produktu
- Link do produktu
- Zdjęcie produktu
- Cena i stara cena
- Waluta
- Ocena i liczba komentarzy
- Liczba sprzedawców
- Dodatkowe informacje
- Liczba zakupów i wyświetleń produktu
Zastosowania
- Zbieranie linków do produktów
- Ocena popularności produktów
- Śledzenie dynamiki cen i popularności produktów
Zapytania
Jako zapytania należy podawać słowa kluczowe lub link do kategorii, na przykład:
xiaomi redmi note
https://market.yandex.ru/catalog/54726/list?local-offers-first=0&deliveryincluded=0&onstock=1
Warianty wyświetlania wyników
A-Parser obsługuje elastyczne formatowanie wyników dzięki wbudowanemu silnikowi szablonów Template Toolkit, co pozwala na wyprowadzanie wyników w dowolnej formie, a także w formie strukturalnej, np. CSV lub JSON.
Wyświetlanie nazwy, minimalnej ceny i oceny produktu
Format wyniku:
$products.format('Nazwa: $title, Minimalna cena: $amountfrom, Ocena: $rating\n')
Przykład wyniku:
Nazwa: Smartfon Apple iPhone 11 64GB, Minimalna cena: 46 244, Ocena: 4.7
Nazwa: Smartfon Apple iPhone Xr 64GB, Minimalna cena: 36 990, Ocena: 4.7
Nazwa: Smartfon Apple iPhone 12 64GB, Minimalna cena: 60 840, Ocena: 4.7
Nazwa: Smartfon Apple iPhone SE 2020 64GB, Minimalna cena: 33 490, Ocena: 4.5
Nazwa: Smartfon Apple iPhone Xr 128GB, Minimalna cena: 43 450, Ocena: 4.7
Wyjście do tabeli CSV
Format wyniku:
[% FOREACH item IN products;
tools.CSVline(item.cardlink, item.title, item.amountfrom, item.rating, item.commentscount);
END %]
Przykład wyniku:
https://market.yandex.ru/product--smartfon-apple-iphone-11-64gb/558171067?nid=54726&show-uid=16206538929466307988916001&context=search&text=iphone&sku=101106266737,"Smartfon Apple iPhone 11 64GB","46 244",4.7,810
https://market.yandex.ru/product--smartfon-apple-iphone-xr-64gb/175941311?nid=54726&show-uid=16206538929466307988916002&context=search&text=iphone&sku=101103379766,"Smartfon Apple iPhone Xr 64GB","36 990",4.7,624
https://market.yandex.ru/product--smartfon-apple-iphone-12-64gb/722976004?nid=54726&show-uid=16206538929466307988916003&context=search&text=iphone&sku=101077347750,"Smartfon Apple iPhone 12 64GB","60 840",4.7,103
https://market.yandex.ru/product--smartfon-apple-iphone-se-2020-64gb/661221015?nid=54726&show-uid=16206538929466307988916004&context=search&text=iphone&sku=101099789863,"Smartfon Apple iPhone SE 2020 64GB","33 490",4.5,358
Tekst początkowy:
Link do produktu, Nazwa produktu, Minimalna cena, Ocena, Liczba komentarzy
W Formacie wyników stosowany jest silnik szablonów Template Toolkit do wyświetlania tablicy $products w pętli FOREACH.
Aby opcja "Prepend text" była dostępna w Edytorze zadań, należy aktywować "More options". W "Prepend text" wpisujemy nazwy kolumn oddzielone przecinkami i drugą linię zostawiamy pustą.
Zapisywanie w formacie SQL
Format wyniku:
[% FOREACH item IN products;
"INSERT INTO products VALUES('" _ item.title _ "', '"; item.cardlink _ "', '"; item.amountfrom _ "', '"; item.rating _ "')\n";
END %]
Przykład wyniku:
INSERT INTO products VALUES('Smartfon Apple iPhone 11 64GB', 'https://market.yandex.ru/product--smartfon-apple-iphone-11-64gb/558171067?nid=54726&show-uid=16206542754162480526716001&context=search&text=iphone&sku=101106266737', '46 244', '4.7')
INSERT INTO products VALUES('Smartfon Apple iPhone Xr 64GB', 'https://market.yandex.ru/product--smartfon-apple-iphone-xr-64gb/175941311?nid=54726&show-uid=16206542754162480526716002&context=search&text=iphone&sku=101103379766', '36 990', '4.7')
INSERT INTO products VALUES('Smartfon Apple iPhone 12 64GB', 'https://market.yandex.ru/product--smartfon-apple-iphone-12-64gb/722976004?nid=54726&show-uid=16206542754162480526716003&context=search&text=iphone&sku=101077347750', '60 840', '4.7')
INSERT INTO products VALUES('Smartfon Apple iPhone SE 2020 64GB', 'https://market.yandex.ru/product--smartfon-apple-iphone-se-2020-64gb/661221015?nid=54726&show-uid=16206542754162480526716004&context=search&text=iphone&sku=101099789863', '33 490', '4.5')
Zrzut wyników do JSON
Ogólny format wyniku:
[% IF notFirst;
",\n";
ELSE;
notFirst = 1;
END;
obj = {};
obj.query = query;
obj.items = [];
FOREACH item IN p1.products;
obj.items.push({
link = item.cardlink
name = item.title
amountfrom = item.amountfrom
});
END;
obj.json %]
Tekst początkowy:
[
Tekst końcowy:
]
Przykład wyniku:
[
{
"query": "https://market.yandex.ru/catalog--mobilnye-telefony/54726/list?text=iphone&hid=91491&was_redir=1&rt=10&cpa=0&onstock=0&local-offers-first=0",
"items": [
{
"link": "https://market.yandex.ru/product--smartfon-apple-iphone-11-64gb/558171067?nid=54726&show-uid=16206548825917275667016001&context=search&text=iphone&sku=101106266737",
"amountfrom": "46 244",
"name": "Smartfon Apple iPhone 11 64GB"
},
{
"link": "https://market.yandex.ru/product--smartfon-apple-iphone-xr-64gb/175941311?nid=54726&show-uid=16206548825917275667016002&context=search&text=iphone&sku=101103379766",
"amountfrom": "36 990",
"name": "Smartfon Apple iPhone Xr 64GB"
},
{
"link": "https://market.yandex.ru/product--smartfon-apple-iphone-12-64gb/722976004?nid=54726&show-uid=16206548825917275667016003&context=search&text=iphone&sku=101077347750",
"amountfrom": "60 840",
"name": "Smartfon Apple iPhone 12 64GB"
},
{
"link": "https://market.yandex.ru/product--smartfon-apple-iphone-se-2020-64gb/661221015?nid=54726&show-uid=16206548825917275667016004&context=search&text=iphone&sku=101099789863",
"amountfrom": "33 490",
"name": "Smartfon Apple iPhone SE 2020 64GB"
}
]
}
]
Aby opcje "Prepend text" i "Append text" były dostępne w Edytorze zadań, należy aktywować "More options".
Możliwe ustawienia
| Parametr | Wartość domyślna | Opis |
|---|---|---|
| AntiGate preset | default | Wybiór presetu Util::AntiGate, więcej o ustawieniu tutaj |
| AntiGate preset for old captcha | default | Podobnie jak AntiGate preset, ale używane tylko dla zwykłych (starych, w formie jednego obrazka) captch. Jeśli tutaj nie wybrano presetu, dla takich captch zostanie użyty preset wybrany w AntiGate preset. |
| Auto-Solve ClickCaptcha | ☐ | Automatyczne rozwiązywanie click captchy (bez użycia serwisów) |
| Experimental img captcha max count | 1 | Maksymalna liczba powtórnych obrazków captcha na próbę |
| Pages count | 5 | Liczba stron do scrapowania |
| Search region ID | Not set | Region do scrapowania |
