Bazos.cz Scraper — Czech Classifieds Data avatar

Bazos.cz Scraper — Czech Classifieds Data

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Bazos.cz Scraper — Czech Classifieds Data

Bazos.cz Scraper — Czech Classifieds Data

Bazos.cz scraper for Czech classifieds. Extract listings by keyword or category: price, title, location, date, views, seller name, description and photos. Export JSON, CSV, Excel, API.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Haketa

Haketa

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

18 hours ago

Last modified

Features

Limited permissions

Share

Bazos.cz Scraper — Czech Classifieds Listings, Prices, Views & Details 🇨🇿

Apify Actor Maintenance Data Format Pagination

Extract classified listings from Bazos.cz — the largest second-hand marketplace in the Czech Republic — at scale with zero login, no cookies and no coding. This Bazos.cz scraper turns any search keyword or category subdomain into a clean, structured dataset: listing title, price in CZK, seller location, category subdomain, publish date, total view counter, seller name, masked phone preview, full ad description, and cover photo. Search for iphone, audi, kolo, or paste category URLs directly, and scrape Bazos into a spreadsheet in minutes.

Export all results to JSON, CSV, Excel, or API.

Built for resellers and arbitrage hunters, used-goods dealers, price analysts, market researchers, PropTech teams, automotive dealers, and developers who need reliable Bazos data without maintaining custom scraping scripts.


⚡ At a glance

FeatureSpecification
Target WebsiteBazos.cz (Czech Republic)
Search MethodsSearch terms (keywords), Category subdomains, Start URLs
Supported CategoriesAuto (auto), Mobil (mobil), PC (pc), Elektro (elektro), Reality (reality), Dům a zahrada (dum), Stroje (stroje), Ostatní
Data EnrichmentClean numeric price (CZK), seller name, ad views, date posted, description
Pagination SupportUnlocked deep multi-page crawling (1,000+ items per search term)
Typical Run Time~10–18 seconds for 100 listings; ~45–60 seconds for 500 listings
Proxy SupportApify Proxy Datacenter enabled by default (Residential not needed)
Export FormatsJSON, CSV, XML, Excel (XLSX), HTML Table, Apify Dataset API
DeduplicationAutomatic canonical listing ID deduplication across all search terms

🔎 Why scrape Bazos.cz?

Bazos.cz is the default online trading platform across the Czech Republic for buying and selling consumer electronics, mobile phones, used automobiles, bikes, construction equipment, furniture, real estate, and local services. Listings are organized across specialized category subdomains (auto.bazos.cz, mobil.bazos.cz, reality.bazos.cz, pc.bazos.cz, elektro.bazos.cz, etc.). Each listing card carries crucial market signals: an asking price, municipality and postal code, the exact publish date, an open public view counter, and seller information.

Collecting this market intelligence by hand is slow and unsustainable. Listings update constantly, items sell within hours, and Bazos offers no native API or export facility. Copy-pasting hundreds of ads across paginated result pages — while cleaning price strings like 1 699 999 Kč into numeric values — is tedious.

This Bazos scraper automates the entire process. It walks search results, eliminates duplicate items by ID, parses formatted prices into clean integers, tracks original price text (including "Dohodou" or "Nabídněte"), resolves the category from the listing subdomain, extracts listing dates and view counters, and optionally fetches the seller's name and full description.

Primary use cases for automated Bazos scraping:

  • 💰 Second-Hand Resale & Arbitrage — spot underpriced iPhones, laptops, power tools, or bicycles for fast resale margins.
  • 📈 Price Intelligence & Tracking — monitor what items actually list for across Czech regions and track price fluctuations over time.
  • 📊 Supply & Demand Analytics — measure new listing frequency, inventory turnover, and average view counts per category.
  • 🔥 Demand & Liquidity Indicators — use the public view counter and posting timestamp to evaluate customer interest and listing freshness.
  • 🚗 Used-Car & Machinery Sourcing — dealers tracking specific car models, mileage, and replacement parts on auto.bazos.cz.
  • 🏷️ Competitive Pricing — benchmark your retail prices against live Czech second-hand offerings.
  • 🤖 AI & E-Commerce Repricing — feed structured classifieds data into valuation models, price alert bots, and market dashboards.

✨ What this Bazos.cz scraper does

  • 🔎 Keyword Search Across All Categories — enter keywords like iphone, audi, kolo, macbook, or stůl. Each query searches across all Bazos category databases.
  • 🔗 Direct URL Scraping — paste any Bazos search or category URL (including specific subdomains like auto.bazos.cz or reality.bazos.cz) into Start URLs to scrape filtered views directly.
  • 📄 Unlocked Deep Pagination — automatically paginates through consecutive result pages via the native crz offset (~20 listings per page) to retrieve hundreds to thousands of de-duplicated listings.
  • 💵 Clean Numeric Pricing — parsed into integer price (CZK) alongside original priceText ("1 699 999 Kč"). Non-numeric listings ("Nabídněte", "Dohodou") return price: null while preserving original text.
  • 📍 Location & Postal Areas — extracts the seller's municipality, district, and postal code.
  • 🗂️ Subdomain Category Resolution — automatically identifies the category from the listing's subdomain (auto, mobil, pc, elektro, reality, dum, prace...).
  • 📅 Direct Date & View Extraction — captures the exact posting date and public views count directly from listing cards without requiring slow detail page visits.
  • 👤 Seller Name & Description — enable Scrape Detail Pages to capture seller name, full ad text, and masked phone preview.
  • 🖼️ Cover Images — captures primary cover photo URLs for every listing.
  • 🎯 Budget Filtering — filter listings directly at scrape time using minimum and maximum CZK thresholds (priceMin and priceMax).
  • ⚡ High Throughput & Low Cost — pure HTTP requests with session rotation; scrapes 500 listings in ~30–50 seconds on standard Datacenter proxies.

🎯 Use cases

  • Arbitrageurs & Resellers — track newly listed consumer electronics, tools, and vintage items before competitors.
  • Used-Car Dealers & Garages — monitor auto.bazos.cz for specific makes, models, and spare parts.
  • Regional Price Analysts — build historical datasets of Czech second-hand asking prices across Prague, Brno, Ostrava, and Pilsen.
  • Real Estate Investors — monitor private property listings on reality.bazos.cz without broker commissions.
  • Retailers & Wholesalers — track surplus inventory and liquidation stock across industrial machinery and electronics.
  • Automated Alert Systems — configure scheduled monitoring runs to alert your team via Slack or webhook when target SKUs are posted.

📥 Input parameters

Configure runs in the Apify Console or pass JSON parameters via the REST API. All fields are optional:

ParameterTypeDefaultDescription
searchTermsarray["iphone"]Keywords to search across Bazos categories (e.g., iphone, audi, kolo). Each term is scraped independently.
startUrlsarray[]Direct Bazos search or category URLs (e.g. https://auto.bazos.cz/). Overrides search terms.
priceMinintegernullMinimum asking price in Kč (CZK).
priceMaxintegernullMaximum asking price in Kč (CZK).
scrapeDetailsbooleanfalseOpen each individual ad page to capture seller name, full description, and masked phone preview.
maxItemsinteger0 (prefill: 100)Maximum number of listings to collect across all searches. Set to 0 for unlimited extraction.
maxPagesPerSearchinteger0Maximum pages to scrape per search term / URL (~20 listings per page). Set to 0 for unlimited pagination.
proxyConfigurationobjectDatacenterApify Proxy configuration. Datacenter proxies work reliably out of the box.

Input JSON example — Electronics in Prague

{
"searchTerms": ["iPhone 15 Pro", "MacBook Air M2"],
"priceMin": 10000,
"scrapeDetails": false,
"maxItems": 150
}

Input JSON example — Used vehicles with category URL

{
"startUrls": ["https://auto.bazos.cz/?hledat=skoda+octavia&rubriky=auto"],
"priceMin": 150000,
"priceMax": 450000,
"scrapeDetails": true,
"maxItems": 200
}

Input JSON example — Fast preview run (empty default)

{
"maxItems": 50
}

📤 Output dataset

Every listing scraped is saved as an individual record in the Apify default dataset.

Sample record (core listing)

{
"id": "192348501",
"url": "https://mobil.bazos.cz/inzerat/192348501/iphone-14-pro-128gb.php",
"title": "iPhone 14 Pro 128GB - stav nového",
"price": 16500,
"priceText": "16 500 Kč",
"currency": "CZK",
"location": "Praha 4, 140 00",
"category": "mobil",
"date": "2026-11-09",
"views": 142,
"sellerName": null,
"phone": null,
"phonePreview": null,
"description": "Prodám iPhone 14 Pro 128GB v tmavě fialové barvě. Telefon je ve stavu nového kusu, bez jediného škrábance. Kondice baterie 94%. K telefonu kompletní balení s kabelem a ochranným krytem.",
"imageUrl": "https://www.bazos.cz/img/1/501/192348501.jpg",
"searchTerm": "iphone",
"scrapedAt": "2026-11-10T14:50:22.180Z"
}

Sample record (enriched with detail page)

When scrapeDetails: true is enabled:

{
"id": "192348501",
"url": "https://mobil.bazos.cz/inzerat/192348501/iphone-14-pro-128gb.php",
"title": "iPhone 14 Pro 128GB - stav nového",
"price": 16500,
"priceText": "16 500 Kč",
"currency": "CZK",
"location": "Praha 4, 140 00",
"category": "mobil",
"date": "2026-11-09",
"views": 142,
"sellerName": "Tomáš Dvořák",
"phone": null,
"phonePreview": "775...",
"description": "Prodám iPhone 14 Pro 128GB v tmavě fialové barvě. Telefon je ve stavu nového kusu, bez jediného škrábance. Kondice baterie 94%. K telefonu kompletní balení s kabelem a ochranným krytem. Osobní předání Praha.",
"imageUrl": "https://www.bazos.cz/img/1/501/192348501.jpg",
"searchTerm": "iphone",
"scrapedAt": "2026-11-10T14:50:25.420Z"
}

📊 Field coverage & dictionary

📦 Listing identification & pricing
Field NameTypeCoverageDescription
idString🟢 High (100%)Unique Bazos advertisement identifier (numeric string).
titleString🟢 High (100%)Title headline of the listing.
urlString🟢 High (100%)Canonical direct URL to the advertisement on Bazos.cz.
priceNumber🟢 High (96%)Clean integer price in CZK (null for "Dohodou" or "Nabídněte").
priceTextString🟢 High (100%)Raw formatted price string as published on the site.
currencyString🟢 High (100%)Currency identifier (CZK).
🏷️ Classification, timing & engagement
Field NameTypeCoverageDescription
categoryString🟢 High (100%)Category subdomain (e.g., auto, mobil, pc, elektro, reality).
locationString🟢 High (98%)Municipality, district, or postcode of the seller.
dateString🟢 High (98%)ISO 8601 calendar date (YYYY-MM-DD) when the ad was published.
viewsNumber🟢 High (95%)Public lifetime view count displayed on the listing.
imageUrlString🟢 High (95%)Cover photo URL for the item.
descriptionString🟢 High (98%)Listing description text (teaser in list mode; full text in detail mode).
👤 Seller information (details enabled)
Field NameTypeCoverageDescription
sellerNameString🟢 High (92% when details on)Display name of the seller from the ad page.
phonePreviewString🟢 High (85% when details on)Masked phone prefix (e.g., 721..., 777...).
searchTermString🟢 High (100%)Query keyword responsible for discovering the record.
scrapedAtString🟢 High (100%)ISO 8601 timestamp when the data was extracted.

⚡ Performance & execution benchmarks

Listings RequestedDetails ModeConcurrencyAverage Run TimeMemory Usage
50 listings❌ NoN/A8–12 seconds~95 MB
100 listings❌ NoN/A15–20 seconds~110 MB
500 listings❌ NoN/A45–60 seconds~140 MB
1,000 listings❌ NoN/A90–120 seconds~180 MB
100 listings✅ Yes535–50 seconds~135 MB
500 listings✅ Yes52.5–3.5 minutes~195 MB

🗂️ Bazos category subdomains

Bazos partitions listings across dedicated subdomains. You can target specific subdomains by providing them in startUrls:

SubdomainFocus CategoryPopular Keywords
auto.bazos.czCars, Motorcycles, Parts, CaravansŠkoda, BMW, kola, pneumatiky, přívěs
mobil.bazos.czSmartphones, Smartwatches, AccessoriesiPhone, Samsung, Xiaomi, Apple Watch
pc.bazos.czLaptops, Desktops, Graphics Cards, MonitorsMacBook, RTX, herní PC, iPad, Dell
elektro.bazos.czAudio, TVs, White Goods, Coffee MachinesTelevize, pračka, kávovar, repro
reality.bazos.czApartments, Houses, Land, GaragesByt, dům, zahrada, garáž, pronájem
dum.bazos.czHome, Garden, Furniture, ToolsSedačka, stůl, sekačka, dřevo, kamna
stroje.bazos.czHeavy Equipment, Tractors, Industrial ToolsTraktor, bagr, soustruh, vřeteno
deti.bazos.czBaby Strollers, Toys, Children's ClothingKočárek, autosedačka, Lego, postýlka

💡 Best practices for scraping Bazos.cz

  1. Category isolation via Start URLs: To avoid cross-category matches (e.g., searching for audi returning both actual cars and toy models), paste the specific subdomain URL https://auto.bazos.cz/?hledat=audi into startUrls.
  2. Speed optimization: Leave scrapeDetails: false unless you explicitly require seller names. The standard listing view already captures price, date, views, location, and cover images at 5x higher speed.
  3. Budget slicing: Use priceMin and priceMax to filter out accessory listings and focus on complete products.
  4. Proxy efficiency: Datacenter proxies are configured by default. Do not use residential proxies for Bazos, as datacenter IP rotation operates with 100% success and avoids unnecessary per-GB bandwidth fees.
  5. Freshness tracking: Sort your exported dataset by date descending to prioritize items published within the past 24 hours.

Looking for classifieds across Europe and beyond? Check out these companion actors:


🔁 Deep pagination & scaling

  • Automated offset calculation: The actor calculates crz = (page - 1) * 20 and navigates consecutive result pages until reaching your requested maxItems.
  • Automatic deduplication: Records are keyed by listing ID. If multiple search terms match the same advertisement, only a single record is pushed to the dataset.
  • Unlimited collection: Setting maxItems: 0 and maxPagesPerSearch: 0 enables full catalog harvesting.

🇸🇰 Looking for Slovak listings? Check Bazos.sk

If your market research or resale business covers Slovakia as well as the Czech Republic, check out our dedicated sister actor:


🔄 Automation & webhook integrations

You can easily connect this actor to automated pipelines using Apify integrations:

  • Google Sheets: Automatically append newly discovered Bazos items to a shared spreadsheet for instant team review.
  • Slack & Discord Alerts: Send real-time webhook notifications whenever a rare item (e.g. vintage watch, retro gaming console, or underpriced car) is posted.
  • Make (Integromat) & Zapier: Build automated workflows that alert buyers or calculate resale profit margins dynamically.
  • Database Pipelines: Stream thousands of categorized second-hand records into PostgreSQL, MongoDB, or Snowflake for historical trend analysis.

💻 Programmatic integration

Node.js / JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({
token: 'YOUR_APIFY_TOKEN',
});
const run = await client.actor('haketa/bazos-scraper').call({
searchTerms: ['iPhone 15'],
priceMin: 12000,
priceMax: 20000,
maxItems: 100,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Extracted ${items.length} Bazos listings:`);
console.table(items.slice(0, 5), ['title', 'price', 'location', 'date', 'views']);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_APIFY_TOKEN')
run_input = {
'searchTerms': ['Škoda Octavia'],
'priceMin': 100000,
'maxItems': 150,
}
run = client.actor('haketa/bazos-scraper').call(run_input=run_input)
dataset_items = client.dataset(run['defaultDatasetId']).list_items().items
print(f"Collected {len(dataset_items)} Bazos records:")
for item in dataset_items[:5]:
print(f"- {item.get('title')}: {item.get('priceText')} ({item.get('location')})")

❓ Frequently Asked Questions (FAQ)

How fresh is the data?

All listings are extracted live at execution time. Posting dates and public view counts reflect real-time marketplace status.

Can I retrieve complete seller phone numbers?

Bazos.cz masks phone numbers on public web pages behind user verification. The scraper captures the seller display name and the open masked prefix (phonePreview, e.g. 775...), but full digits are not publicly exposed without interactive authentication.

How do view counts help with market intelligence?

High view counts combined with recent publish dates indicate hot, high-demand items. High views on older listings indicate asking prices may be set above market clearing value.

What happens if a listing has no numeric price?

For listings labeled "Dohodou" (by agreement) or "Nabídněte" (make an offer), price returns null while priceText preserves the original descriptive label.


📋 Changelog

Version 1.2 — November 2026

  • Deep Pagination Unlocked: Upgraded pagination loop to support deep crawling past 1,000+ listings without artificial restrictions.
  • Fast Prefill Sampling: Configured fast default prefill (100 items) for sub-20 second preview runs.
  • Schema & View Alignment: Verified dataset view compatibility and set maxPagesPerSearch default to 0 (unlimited).
  • Subdomain Routing Optimization: Enhanced automated detection of category tags from host URLs.

Version 1.1 — October 2026

  • View Count Parsing: Added extraction of public advertisement view counters.
  • Date Formatting: Normalized Czech localized date strings into ISO 8601 YYYY-MM-DD timestamps.

Version 1.0 — Initial Release

  • Core Scraping Engine: Keyword and category subdomain search across Bazos.cz.
  • Universal Export: JSON, CSV, and Excel compatibility.
⌂ 换网址