Olx Search Scraper avatar
Olx Search Scraper

Pricing

from $0.10 / 1,000 results

Go to Apify Store
Olx Search Scraper

Olx Search Scraper

Olx Search Scraper acts like a real user: You provide a Search Query (e.g., "MacBook Pro"). You select a Region (e.g., Ukraine, Poland, Romania). The actor navigates, searches, handles pagination, and extracts clean data.

Pricing

from $0.10 / 1,000 results

Rating

5.0

(1)

Developer

DaddyAPI

DaddyAPI

Maintained by Community

Actor stats

1

Bookmarked

1

Total users

1

Monthly active users

2 days ago

Last modified

Share

The only OLX scraper that searches by KEYWORD. No need to manually filter URLs. Enter a term (e.g., "iPhone 15", "Apartment") and get thousands of results instantly.

Apify Actor Node.js

πŸš€ Why this scraper?

Most OLX scrapers require you to manually visit the website, apply filters, copy the URL, and paste it into the scraper. That's slow and unscalable.

Olx Search Scraper acts like a real user:

  1. You provide a Search Query (e.g., "MacBook Pro").
  2. You select a Region (e.g., Ukraine, Poland, Romania).
  3. The actor navigates, searches, handles pagination, and extracts clean data.

Perfect for:

  • πŸ“‰ Price Monitoring: Track competitors or market trends.
  • 🏠 Real Estate: Find new apartment listings instantly.
  • πŸš— Automotive: Monitor car prices across regions.
  • πŸ“¦ Arbitrage: Compare prices between countries.

🌍 Supported Countries

We support the 10 largest OLX markets globally:

DomainCountryLanguageCurrency
olx.uaπŸ‡ΊπŸ‡¦ UkraineUkrainianUAH
olx.plπŸ‡΅πŸ‡± PolandPolishPLN
olx.roπŸ‡·πŸ‡΄ RomaniaRomanianRON
olx.ptπŸ‡΅πŸ‡Ή PortugalPortugueseEUR
olx.bgπŸ‡§πŸ‡¬ BulgariaBulgarianBGN
olx.kzπŸ‡°πŸ‡Ώ KazakhstanRussian/KazakhKZT
olx.uzπŸ‡ΊπŸ‡Ώ UzbekistanUzbek/RussianUZS

πŸ“– How to Use

Option 1: Apify Console (No Coding)

  1. Go to the Input tab.
  2. Enter your Search Keyword (e.g., Sony PlayStation 5).
  3. Select the OLX Domain (e.g., olx.pl).
  4. (Optional) Set Sort By to Newest to get the latest ads.
  5. Proxy Selection: Select "Apify Proxy" (Residential recommended) OR select your own custom proxy groups if you are renting the worker.
  6. Click Start.
  7. Download your data in Excel, CSV, or JSON format.

Option 2: API (Developers)

You can trigger this actor programmatically via REST API, Python, or Node.js.

Input Payload (JSON)

{
"searchQuery": "iPhone 15 Pro",
"olxDomain": "olx.ua",
// Options: "olx.ua" (Ukraine), "olx.pl" (Poland), "olx.ro" (Romania),
// "olx.pt" (Portugal), "olx.bg" (Bulgaria), "olx.kz" (Kazakhstan),
// "olx.uz" (Uzbekistan)
"sortBy": "newest",
// Options: "newest" (Recommended), "cheapest", "expensive", "relevance"
"maxPages": 1,
"maxRequestsPerCrawl": 50,
"proxyConfiguration": {
"useApifyProxy": true
}
}

🐍 Python Example (Simple & Clean)

This script runs the scraper and saves the results to a local file. It demonstrates how to use Custom Proxies (Datacenter or Residential) associated with your Apify account.

import json
from apify_client import ApifyClient
# 1. Configuration
APIFY_TOKEN = 'YOUR_APIFY_TOKEN'
ACTOR_ID = 'daddyapi/olx-search-scraper'
client = ApifyClient(APIFY_TOKEN)
# 2. Define Input with Custom Proxies
# If you "rent" this worker, you can use YOUR OWN Apify proxy groups here.
run_input = {
"searchQuery": "iPhone 15 Pro",
"olxDomain": "olx.ua",
"sortBy": "newest",
"maxPages": 1,
"proxyConfiguration": {
"useApifyProxy": True,
"apifyProxyGroups": [
"BUYPROXIES94952", # <-- Your custom datacenter group
"StaticUS3" # <-- Another group
]
# Remove 'apifyProxyGroups' to use auto-selected Residential proxies
}
}
print(f"πŸš€ Starting scraper for: {run_input['searchQuery']} on {run_input['olxDomain']}...")
# 3. Run Actor
run = client.actor(ACTOR_ID).call(run_input=run_input)
if not run:
print("❌ Failed to start run.")
exit(1)
print(f"βœ… Run finished! Status: {run['status']}")
# 4. Fetch & Save Results
dataset_client = client.dataset(run["defaultDatasetId"])
items = dataset_client.list_items().items
filename = "results.json"
with open(filename, "w", encoding="utf-8") as f:
json.dump(items, f, indent=2, ensure_ascii=False)
print(f"πŸ’Ύ Saved {len(items)} listings to {filename}")

πŸ”’ Proxy Configuration (Bring Your Own Proxies)

This actor is fully compatible with Apify Proxy (Datacenter & Residential) and Custom Proxies.

1. Datacenter Proxies (Cost-Effective)

If you have your own Datacenter proxy groups on Apify you can specify them here. This is great for high-volume users who want to control costs.

{
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": [
"BUYPROXIES94952",
"StaticUS3"
]
}
}

2. Residential Proxies (Best Reliability)

Recommended for most users. Residential proxies are harder to block and provide the highest success rate. Ideal if you are getting 403 errors with Datacenter proxies.

{
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": [
"RESIDENTIAL"
]
}
}

3. Bring Your Own Proxies (Custom URLs)

If you have proxies from an external provider (BrightData, Smartproxy, IPRoyal, etc.), you can pass the connection strings directly.

{
"proxyConfiguration": {
"useApifyProxy": false,
"proxyUrls": [
"http://username:password@my-proxy.example.com:8000",
"http://username:password@my-proxy-2.example.com:8000"
]
}
}

πŸ’‘ Recommendation

  • Low Volume / High Reliability: Start with Residential. It just works.
  • High Volume / Low Cost: If you are running massive scrapes, try Datacenter groups first. If blocked, switch to Residential.

πŸ“Š Data Output

The scraper returns highly detailed, structured data for every listing:

{
"id": 84920155,
"title": "Sony PlayStation 5 Slim 1TB",
"url": "https://www.olx.ua/d/obyavlenie/sony-playstation-5-slim-IDuQ2.html",
"description": "New sealed console, warranty included...",
"price": {
"amount": 18500,
"currency": "UAH",
"display": "18 500 Π³Ρ€Π½."
},
"location": {
"city": "Kyiv",
"region": "Kyiv Oblast"
},
"postedAt": "2025-12-30T14:28:41+02:00",
"isPromoted": true,
"isBusiness": true,
"photos": [
"https://ireland.apollo.olxcdn.com/v1/files/image1.jpg",
"https://ireland.apollo.olxcdn.com/v1/files/image2.jpg"
]
}

βš™οΈ Configuration Parameters

ParameterTypeRequiredDefaultDescription
searchQueryStringβœ…-What to search for. Supports multiple words.
olxDomainEnumβœ…olx.uaThe regional site to scrape.
sortByEnum❌newestnewest, cheapest, expensive, or relevance.
maxPagesInteger❌1Depth of scrape. 1 page β‰ˆ 40-50 ads.
proxyConfigurationObject❌AutoConfigure Residential or Your Custom Proxy Groups.

πŸ›‘οΈ Troubleshooting

  • Empty Results? Check if the item exists in that country. Try a local language keyword (e.g., "komputer" instead of "computer" in Poland).
  • Blocked/403? Your proxy is detected. Switch to Apify Proxy (Residential) or try again later.
  • Missing Fields? Some sellers don't provide all info (e.g., location or business status).

This scraper is for educational and analytical purposes. Please respect OLX's Terms of Service and robots.txt. Do not use this tool to spam sellers or overload their servers. Use responsible rate limits.