OLX Portugal Classifieds Scraper
Pricing
Pay per event
OLX Portugal Classifieds Scraper
Scrape public OLX.pt classifieds from category/search pages. Export prices, locations, images, seller details, and listing URLs.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Scrape public OLX.pt classified listings from category pages, search result pages, and keyword searches. Export listing URLs, titles, prices, locations, dates, images, source pages, and optional detail-page enrichment in a clean dataset ready for spreadsheets, BI tools, CRMs, or automations.
What does OLX Portugal Classifieds Scraper do?
OLX Portugal Classifieds Scraper collects public listing data from OLX.pt, one of Portugal's most active classified marketplaces.
It can scrape:
- π Real estate category pages
- π Car and vehicle listings
- π± Electronics and consumer goods searches
- π§° Services and local offers
- π Any public OLX.pt search URL you provide
The actor starts from OLX category URLs or a keyword search, follows pagination, extracts listing cards, and saves structured results to the default Apify dataset.
Who is it for?
This scraper is useful for teams that need repeatable OLX Portugal marketplace data.
- ποΈ Real estate analysts monitoring rental and sale supply in Portuguese cities
- π Vehicle price researchers tracking used car offers by region
- π Marketplace intelligence teams comparing second-hand prices and availability
- π Growth and lead-generation teams finding public seller opportunities
- π§ͺ Data analysts building market snapshots from public classified listings
- π€ Automation builders feeding OLX listings into alerts, CRMs, or dashboards
Why use this OLX.pt scraper?
Manual OLX research is slow and difficult to repeat. This actor gives you structured data with consistent fields and pagination controls.
Benefits:
- β‘ Fast HTTP-based scraping, no browser required for the main listing mode
- π§Ύ Clean JSON output with price, currency, location, images, and page metadata
- π Repeatable runs for monitoring the same categories or searches
- π― Supports both ready-made OLX URLs and keyword searches
- π§© Works with Apify API, webhooks, datasets, integrations, and MCP tools
What data can you extract from OLX Portugal?
The default dataset contains one row per OLX listing.
| Field | Description |
|---|---|
listingId | OLX card ID or ID parsed from the listing URL |
url | Canonical OLX listing URL |
title | Public listing title |
priceText | Price as displayed on OLX |
price | Parsed numeric price when available |
currency | Currency code, usually EUR |
location | Public location text from the card |
postedAt | Posted, updated, or promoted date text |
categoryPath | Category path supplied in input |
imageUrl | Main listing image URL |
imageUrls | Image URLs parsed from the listing card |
sellerName | Public seller name when detail mode finds it |
sellerType | Public seller type when visible |
description | Detail-page description when detail mode is enabled |
attributes | Visible detail-page parameters when found |
isPromoted | Whether the card appears promoted/top-listed |
sourceUrl | OLX page where the listing was found |
page | Search result page number |
scrapedAt | ISO timestamp of extraction |
How much does it cost to scrape OLX Portugal classifieds?
This actor uses pay-per-event pricing:
- Run start: $0.005 per run.
- Per listing: $0.000034986 on Free, $0.000030423 on Starter/BRONZE, with lower rates on higher Apify plans.
| Plan tier | Price per listing | Approx. 1,000 listings |
|---|---|---|
| Free | $0.000034986 | $0.0350 |
| Starter / BRONZE | $0.000030423 | $0.0304 |
| Scale / SILVER | $0.00002373 | $0.0237 |
| Business / GOLD | $0.000018254 | $0.0183 |
You control cost with maxResults and maxPages. For a first run, keep the prefilled limit around 20 listings. Larger monitoring jobs can increase the limit after you confirm the output fits your workflow.
How to scrape OLX.pt listings
- Open the actor on Apify.
- Paste one or more OLX.pt category or search URLs into OLX.pt category or search URLs.
- Set Maximum listings.
- Keep Open detail pages disabled for the fastest card-only run.
- Enable detail pages only if you need descriptions, seller names, or attributes.
- Click Start.
- Download the dataset as JSON, CSV, Excel, XML, RSS, or HTML.
Input options
OLX.pt category or search URLs
Use this when you already have OLX result pages, for example:
https://www.olx.pt/imoveis/https://www.olx.pt/carros-motos-e-barcos/https://www.olx.pt/ads/q-iphone/
Search keyword
If startUrls is empty, the actor can build an OLX keyword URL from searchQuery, such as:
iphoneapartamento lisboabicicleta estrada
Fallback category path
If both startUrls and searchQuery are empty, the actor uses categoryPath, defaulting to /imoveis/.
Maximum listings
The global cap for saved rows. The actor stops as soon as this number is reached.
Open detail pages
When enabled, the actor opens each listing URL and tries to extract description, seller name/type, and public attributes.
Detail mode is slower because it makes one extra request per listing.
Example input
{"startUrls": [{ "url": "https://www.olx.pt/imoveis/" }],"maxResults": 30,"includeDetails": false,"maxPages": 3,"maxRequestRetries": 3}
Example output
{"listingId": "669245007","url": "https://www.olx.pt/d/anuncio/quarto-da-natureza-IDJi5cj.html","title": "Quarto da Natureza","priceText": "350 β¬","price": 350,"currency": "EUR","location": "Carregado E Cadafais","postedAt": "Para o topo a 14 de maio de 2026","imageUrl": "https://ireland.apollo.olxcdn.com/.../image;s=216x152;q=50","isPromoted": true,"sourceUrl": "https://www.olx.pt/imoveis/","page": 1,"scrapedAt": "2026-05-17T08:00:00.000Z"}
Tips for better OLX scraping
- π― Use specific category URLs when possible.
- π Use keyword search for product monitoring.
- π Start with a low
maxResultsvalue to verify your query. - β‘ Leave detail pages off for fast list monitoring.
- π§Ύ Turn detail pages on only when descriptions or seller fields matter.
- π Schedule the actor to monitor categories over time.
- π Use separate runs for different cities or categories to keep analysis clean.
Integrations and workflows
You can connect this actor to common Apify workflows:
- Send new OLX listings to Google Sheets.
- Push real estate listings to Airtable for review.
- Trigger Slack alerts when new listings match a query.
- Export daily vehicle prices to a data warehouse.
- Feed marketplace intelligence dashboards with fresh CSV files.
- Use webhooks to launch downstream enrichment actors.
API usage: using the OLX scraper with the Apify API
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/olx-portugal-classifieds-scraper').call({startUrls: [{ url: 'https://www.olx.pt/imoveis/' }],maxResults: 30,includeDetails: false});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python
from apify_client import ApifyClientimport osclient = ApifyClient(os.environ['APIFY_TOKEN'])run = client.actor('automation-lab/olx-portugal-classifieds-scraper').call(run_input={'startUrls': [{'url': 'https://www.olx.pt/imoveis/'}],'maxResults': 30,'includeDetails': False,})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
cURL
curl -X POST "https://api.apify.com/v2/acts/automation-lab~olx-portugal-classifieds-scraper/runs?token=$APIFY_TOKEN" \-H 'Content-Type: application/json' \-d '{"startUrls":[{"url":"https://www.olx.pt/imoveis/"}],"maxResults":30,"includeDetails":false}'
Use with AI agents via MCP
OLX Portugal Classifieds Scraper is available as a tool for AI assistants that support the Model Context Protocol (MCP).
Setup for Claude Code:
$claude mcp add --transport http apify "https://mcp.apify.com"
Setup for Claude Desktop, Cursor, or VS Code:
{"mcpServers": {"apify": {"url": "https://mcp.apify.com"}}}
Your AI assistant will authenticate with your Apify account on first use. You can then reference automation-lab/olx-portugal-classifieds-scraper in prompts.
Example prompts:
- "Use automation-lab/olx-portugal-classifieds-scraper to collect 50 OLX.pt apartment listings in Lisbon and summarize prices."
- "Run the OLX Portugal scraper for iPhone listings and identify the cheapest offers."
- "Scrape OLX Portugal real estate listings and create a CSV grouped by location."
Legality: is it legal to scrape OLX Portugal?
This actor extracts publicly available listing information from OLX.pt pages. You are responsible for using the output lawfully and respecting applicable rules, privacy requirements, and platform terms.
Do not use this actor to scrape private account data, bypass login protections, spam sellers, or make automated decisions that require legal review.
Limitations
- OLX page markup can change, so selectors may need maintenance over time.
- Some fields are only available on detail pages.
- Seller phone numbers and private contact details are not collected.
- Search availability depends on what OLX publicly shows for your query.
- Very broad searches may require more pages and a higher
maxResultslimit.
FAQ and troubleshooting
How fast is the OLX Portugal scraper?
Card-only HTTP runs usually finish quickly because no browser is opened. A 120-listing cloud test finished in under 10 seconds of actor runtime.
How much does it cost to scrape OLX.pt?
The actor charges a small run-start fee plus a per-listing event. Use maxResults to cap the total cost of each run.
Does OLX Portugal have an official API?
This actor is designed for public OLX.pt pages when you need export-ready listing data and Apify integrations without building your own scraper.
Why did I get fewer listings than requested?
The selected OLX category or search may have fewer visible results, repeated promoted cards, or pagination limits. Try a broader query or increase maxPages.
Why are descriptions empty?
Descriptions require includeDetails: true. In card-only mode, the actor does not open listing pages.
Why is price missing?
Some OLX ads show negotiable, free, exchange, or contact-only pricing. In those cases priceText may be present while numeric price is empty.
Related scrapers
Explore other Automation Lab actors for marketplace, ecommerce, real estate, and lead-generation workflows:
- https://apify.com/automation-lab/google-maps-lead-finder
- https://apify.com/automation-lab/zillow-scraper
- https://apify.com/automation-lab/booking-scraper
- https://apify.com/automation-lab/trustpilot-scraper
Changelog
0.1
Initial version with OLX.pt category/search scraping, pagination, listing-card extraction, optional detail enrichment, and structured dataset output.