Onliner Scraper — Belarus Product Catalogue & Prices
Pricing
from $2.50 / 1,000 results
Onliner Scraper — Belarus Product Catalogue & Prices
Scrape the Onliner.by product catalogue, Belarus's largest price comparison site. Extract product name, brand, minimum and maximum price in BYN, number of competing shop offers, discount, rating, review count, specifications and stock status. 27 categories. No API key.
Pricing
from $2.50 / 1,000 results
Rating
0.0
(0)
Developer
Logiover
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Onliner Scraper — Belarus Product Catalogue, Prices & Reviews
What things actually cost in Belarus: the cheapest and dearest offer across every shop stocking a product, how many shops that is, the discount, and the rating buyers gave it.
What does the Onliner Scraper do?
This Actor collects the product catalogue of Onliner.by, the price-comparison site at the centre of Belarusian online retail. Onliner is not a shop — it is the place shops list against each other — so each product carries a price spread: the minimum and maximum offer across the retailers stocking it, the number of competing offers, and the median of recent minimum prices. That spread is the reason to scrape it: it says what a product sells for in Belarus, not what one retailer wishes it did.
Pick one or more of the 27 catalogue sections, optionally add a keyword, and the Actor pages through them writing one flat row per product: name and brand, the full specification string, minimum and maximum price in BYN, competing offer count, sale flag and discount, the median price, star rating and review count, second-hand offers, monthly instalment and cashback, plus the product URL and photo.
Who is it for?
- Retail and e-commerce teams benchmarking Belarusian shelf prices before entering or repricing.
- Distributors and brand managers watching how their products are priced by the shops that carry them.
- Price-comparison and cashback services seeding a catalogue with real spread data.
- Market researchers tracking inflation and availability in a market with little open data.
- Consumer analysts studying which categories carry the widest retail margins.
Use cases
- Measure the spread between the cheapest and dearest offer per category — the widest spreads are the softest markets.
- Track a brand's average minimum price across phones, laptops and TVs month over month.
- Find products where the offer count collapsed — an early sign of a supply problem.
- Compare rating and review counts to see which products the market has actually adopted.
- Pull the discount and sale flags to build a promotions calendar for Belarusian retail.
- Feed an AI agent live catalogue prices so it can answer "what does a Xiaomi phone cost in Minsk?".
Why use this Onliner Scraper?
- Price spread, not a single price — minimum, maximum, median and the number of competing shop offers.
- 27 verified catalogue sections, from phones and laptops to fridges, kettles, watches and scooters.
- Ratings and review counts on a 5-point scale, converted from Onliner's internal 50-point score.
- Instalment and cashback figures, which is how a large share of Belarusian retail is actually paid for.
- Keyless and login-free — nothing to register, nothing to rotate.
- Bulk by design — 30 products per request across categories holding thousands of items each.
What data can you extract?
One row per product. Anything the source left blank comes back as null.
| Field | Type | Description |
|---|---|---|
productId | number | Onliner product identifier |
productKey | string | Onliner product slug key |
url | string | Direct link to the product page |
category | string | Catalogue section requested |
categoryName | string | Section name as Onliner labels it in Russian |
brand | string | Manufacturer |
name | string | Product name |
fullName | string | Full name including the product-type prefix |
priceMin | number | Cheapest offer across all shops, in BYN |
priceMax | number | Dearest offer across all shops, in BYN |
currency | string | Currency, normally BYN |
offerCount | number | How many shops currently stock it |
isOnSale | boolean | Onliner marks the product as discounted |
discount | number | Discount size where one is flagged |
medianPrice | number | Median of recent minimum prices |
rating | number | Buyer rating out of 5 |
reviewCount | number | Number of reviews |
status | string | Catalogue status, e.g. active |
specs | string | Full specification string |
shortSpecs | string | Key specifications only |
secondHandOffers | number | Number of used offers on Onliner's second-hand section |
secondHandMinPrice | number | Cheapest used offer |
monthlyInstalment | number | Monthly instalment Onliner advertises |
cashbackPercent | number | Co-brand card cashback percentage |
imageUrl | string | Product photo |
scrapedAt | string | When this row was collected |
Sample output
{"productId": 5159080,"productKey": "xi17tpro12512gdp","url": "https://catalog.onliner.by/mobile/xiaomi/xi17tpro12512gdp","category": "mobile","categoryName": "Мобильные телефоны","brand": "Xiaomi","name": "17T Pro 12GB/512GB международная версия (темно-сиреневый)","fullName": "Телефон Xiaomi 17T Pro 12GB/512GB международная версия (темно-сиреневый)","priceMin": 2440,"priceMax": 4218.88,"currency": "BYN","offerCount": 39,"isOnSale": false,"discount": 0,"medianPrice": 2460,"rating": 5,"reviewCount": 11,"status": "active","specs": "Android, экран 6.83\" AMOLED (1280x2772) 144 Гц, Mediatek Dimensity 9500, ОЗУ 12 ГБ, память 512 ГБ, камера 5...","shortSpecs": "ОЗУ 12 ГБ, флэш-память 512 ГБ","secondHandOffers": 0,"secondHandMinPrice": null,"monthlyInstalment": 71.43,"cashbackPercent": 5,"imageUrl": "https://imgproxy.onliner.by/124LOPWHhaVeysEU-jQDmJhGIUXn0oRNMqOXg97Kkvs/w:170/h:250/z:2/f:jpg/aHR0cHM6Ly9jb...","scrapedAt": "2026-08-15T07:46:00.186Z"}
How to use the Onliner Scraper
Option A — a whole category
Select one or more sections — mobile phones, laptops, TVs, fridges — leave the keyword empty and set a result limit. The largest sections hold thousands of products each.
Option B — one brand across categories
Select several categories and set the keyword to a brand, e.g. samsung or xiaomi. The keyword is applied inside each category, so one run returns that brand's whole footprint.
Option C — a price monitor
Pick the categories you sell into, schedule the Actor daily, and diff priceMin and offerCount between runs to catch repricing the day it happens.
Input parameters
| Input | Type | Description |
|---|---|---|
categories | array | Onliner catalogue sections to collect. Each is crawled as its own search, so several can be selected. Default: ["mobile"]. |
query | string | Optional keyword filter applied inside each selected category, e.g. xiaomi or samsung. Leave empty for the whole category. |
maxResults | integer | Stop after this many products. Each request returns 30. Default: 1000. |
proxyConfiguration | object | Residential proxy pinned to Belarus. The catalogue is public, but a Belarusian exit is the most reliable. |
Tips for best results
- Categories are crawled one at a time, so listing several is the way to build a broad dataset in a single run.
priceMinandpriceMaxcome from different shops. The gap, not the average, is the useful signal.ratingis converted to a 5-point scale for readability; Onliner stores it internally out of 50.secondHandMinPriceis only filled where a used listing exists, which is a minority of products.- Watch
status— a product that leavesactivehas been discontinued or delisted, which is worth logging over time.
Integrations
Connect this Actor to Make, Zapier, n8n, Slack, Google Sheets, GitHub, Airtable or any HTTP endpoint through Apify integrations. Every finished run can push its dataset straight into your warehouse, or fire a webhook so a downstream job starts the moment the data lands.
API usage
Run the Actor from your own code with the Apify API. Datasets can be exported as JSON, CSV, Excel, XML, RSS or HTML, and every run is available through the Apify API reference.
curl -X POST "https://api.apify.com/v2/acts/logiover~onliner-belarus-product-scraper/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"input": {"categories": ["mobile", "notebook"], "query": "", "maxResults": 1000, "proxyConfiguration": {"useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"], "apifyProxyCountry": "BY"}}}'
Python, JavaScript, PHP and CLI clients are documented under Apify API clients.
Use with AI agents (MCP)
This Actor is callable from any MCP-compatible client — Claude, Cursor, VS Code or your own agent — through the Apify MCP server. An agent can call it to answer live questions about Belarusian retail prices, product ratings and how many shops stock an item instead of guessing from stale training data.
FAQ
Do I need an Onliner account or API key?
No. The catalogue is public and the Actor reads it without a login or key.
Which categories are supported?
27 verified sections: mobile phones, laptops, TVs, watches, headphones, fridges, kettles, fans, mice, dishwashers, heaters, hair dryers, batteries, SSDs, hard drives, graphics cards, CPUs, motherboards, smartwatches, irons, multicookers, soundbars, cookers, camera lenses, consoles, PC cases and scooters.
How many products can one run return?
Watches alone hold over 30,000 and headphones over 11,000. Select several categories to build a dataset in the tens of thousands.
What currency are prices in?
BYN, the Belarusian rouble, as Onliner publishes them.
What is the difference between priceMin and medianPrice?
priceMin is the cheapest offer right now. medianPrice is the median of the recent minimums, so a priceMin well below it means a genuine promotion rather than the usual floor.
Why did my run return zero products?
Usually a keyword that matches nothing inside the selected category. Clear the keyword to take the whole section.
Is the product data in Russian?
Yes — names, specifications and category labels are published in Russian, and are collected as written.
Why are some fields null?
Cashback, instalment and second-hand figures are optional; a product without them returns null rather than a zero, so the two cases stay distinguishable.
Can I export to CSV or Excel?
Yes. Every run's dataset exports as JSON, CSV, Excel, XML, RSS or HTML from the Storage tab, the API, or automatically through an integration.
How fresh is the data?
Every run reads the site live at that moment, so the data is as fresh as the site itself. Schedule the Actor hourly, daily or weekly to build a time series.
How often is the Actor updated?
It is monitored and fixed when the site changes its markup or its endpoints. Report anything that looks wrong through the Issues tab and it gets picked up.
Is it legal to scrape Onliner?
This Actor collects only publicly available information — the same pages any visitor can open without logging in. It does not bypass a login, and it does not touch private or personal accounts. Public data collection is legal in most jurisdictions, but how you use the data is your responsibility: if any record contains personal data, GDPR and comparable laws still apply, and you need a lawful basis for processing it. When in doubt, take legal advice. See Apify's ethical web scraping guide.
Related scrapers
- Rozetka Scraper — Ukrainian e-commerce prices.
- eMAG Scraper — Romanian and Bulgarian e-commerce.
- Avito.ru Scraper — Russian classifieds.
- Kolesa.kz Scraper — Kazakh vehicle marketplace.
- Takealot Scraper — South African retail prices.