Onliner Scraper — Belarus Product Catalogue & Prices avatar

Onliner Scraper — Belarus Product Catalogue & Prices

Pricing

from $2.50 / 1,000 results

Go to Apify Store
Onliner Scraper — Belarus Product Catalogue & Prices

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

Logiover

Maintained by Community

Actor 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.

FieldTypeDescription
productIdnumberOnliner product identifier
productKeystringOnliner product slug key
urlstringDirect link to the product page
categorystringCatalogue section requested
categoryNamestringSection name as Onliner labels it in Russian
brandstringManufacturer
namestringProduct name
fullNamestringFull name including the product-type prefix
priceMinnumberCheapest offer across all shops, in BYN
priceMaxnumberDearest offer across all shops, in BYN
currencystringCurrency, normally BYN
offerCountnumberHow many shops currently stock it
isOnSalebooleanOnliner marks the product as discounted
discountnumberDiscount size where one is flagged
medianPricenumberMedian of recent minimum prices
ratingnumberBuyer rating out of 5
reviewCountnumberNumber of reviews
statusstringCatalogue status, e.g. active
specsstringFull specification string
shortSpecsstringKey specifications only
secondHandOffersnumberNumber of used offers on Onliner's second-hand section
secondHandMinPricenumberCheapest used offer
monthlyInstalmentnumberMonthly instalment Onliner advertises
cashbackPercentnumberCo-brand card cashback percentage
imageUrlstringProduct photo
scrapedAtstringWhen 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

InputTypeDescription
categoriesarrayOnliner catalogue sections to collect. Each is crawled as its own search, so several can be selected. Default: ["mobile"].
querystringOptional keyword filter applied inside each selected category, e.g. xiaomi or samsung. Leave empty for the whole category.
maxResultsintegerStop after this many products. Each request returns 30. Default: 1000.
proxyConfigurationobjectResidential 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.
  • priceMin and priceMax come from different shops. The gap, not the average, is the useful signal.
  • rating is converted to a 5-point scale for readability; Onliner stores it internally out of 50.
  • secondHandMinPrice is only filled where a used listing exists, which is a minority of products.
  • Watch status — a product that leaves active has 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.

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.