xe.gr Real Estate Scraper — Greece Property Listings avatar

xe.gr Real Estate Scraper — Greece Property Listings

Pricing

from $3.50 / 1,000 results

Go to Apify Store
xe.gr Real Estate Scraper — Greece Property Listings

xe.gr Real Estate Scraper — Greece Property Listings

Scrape property listings from xe.gr — Greece's #1 classifieds portal (1.5M+ visitors, 500K+ ads). Extract apartments, houses, land, commercial, parking by area, price, size and bedrooms. Returns price, €/m², floors, year, location, agent and images per listing. Direct HTML — no browser, no anti-bot.

Pricing

from $3.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

21 hours ago

Last modified

Share

xe.gr Real Estate Scraper — Scrape Greece Property Listings & Prices

Scrape property listings from xe.gr, Greece's largest classifieds portal with 500K+ active listings and 1.5M+ monthly visitors. This xe.gr real estate scraper extracts apartments, houses, land, commercial space and parking — by area, transaction type (sale or rent), price, size and bedrooms — and returns structured Greek property data: price, m², €/m², floors, bedrooms, year built, location and agent. It runs on fast direct HTML scraping (no browser) and exports to JSON, CSV or Excel. Covers Athens, Thessaloniki, Piraeus, Patras and all of Greece.

✨ What this Actor does / Key features

  • 🏠 All property categories — apartments, maisonettes, detached houses, land, commercial property, parking and storage.
  • 🔁 Sale or rent — 16 listing variations covering every transaction × property-type combination.
  • 📍 Area targeting — search any area using xe.gr's Google Place IDs; multiple areas run as separate tasks.
  • 💶 Powerful filters — filter by price range (EUR), surface range (m²) and bedroom range.
  • 📊 Rich listing data — price, €/m², size, bedrooms, bathrooms, year built, floors, renovated/furnished flags, location and agent.
  • 🖼️ Images & agent info — main image URL and agent logo URL for every listing.
  • 🌐 English or Greek — choose the URL language prefix for output.
  • Fast HTML scraping — pure HTTP with __NEXT_DATA__ JSON extraction and a cheerio fallback; no browser overhead.
  • 🛡️ Proxy support — Apify Proxy integration (residential + country=GR recommended for scale).

🔍 Input

FieldTypeDescription
geoPlaceIdsarrayGoogle Place IDs used by xe.gr for geo-filtering. Each ID becomes its own task. Required.
areaSlugsarrayOptional URL slugs paired 1:1 with geoPlaceIds for cleaner request URLs.
variationstringListing variation — transaction type × property type (e.g. apartment-for-sale, property-to-rent).
priceMinintegerMinimum price filter in EUR. 0 = no minimum.
priceMaxintegerMaximum price filter in EUR. 0 = no maximum.
sqmMinintegerMinimum surface area in m². 0 = no minimum.
sqmMaxintegerMaximum surface area in m². 0 = no maximum.
bedroomsMinintegerMinimum bedroom count. 0 = no minimum.
bedroomsMaxintegerMaximum bedroom count. 0 = no maximum.
languagestringURL language prefix: en (English) or el (Greek).
maxListingsintegerTotal cap across all area tasks. 0 = unlimited.
maxPagesPerTaskintegerPagination depth per Place ID (xe.gr caps deep pagination around page 295).
requestDelayintegerDelay between sequential requests, in milliseconds.
maxRetriesintegerRetries per request on HTTP errors (rotates proxy IP).
proxyConfigurationobjectApify Proxy settings. Residential with country=GR recommended for scale.

🚀 Example input

{
"geoPlaceIds": ["ChIJ8UNwBh-9oRQR3Y1mdkU1Nic"],
"areaSlugs": ["athens"],
"variation": "apartment-for-sale",
"priceMin": 100000,
"priceMax": 500000,
"sqmMin": 50,
"sqmMax": 150,
"bedroomsMin": 1,
"bedroomsMax": 3,
"language": "en",
"maxListings": 500,
"maxPagesPerTask": 20,
"requestDelay": 800,
"maxRetries": 3,
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"], "apifyProxyCountry": "GR" }
}

Finding a Place ID: open any area page on xe.gr (e.g. /en/property/r/property-for-sale/ChIJ8UNwBh-9oRQR3Y1mdkU1Nic_athens). The 27-character segment between /r/{variation}/ and _{slug} is the Place ID. Athens = ChIJ8UNwBh-9oRQR3Y1mdkU1Nic, Thessaloniki = ChIJ7eAoFPQ4qBQRqXTVuBXnugk, Piraeus = ChIJRzGst-u7oRQR9_0w_5XaINg.

📦 Output

Each property listing is saved as a structured item in the dataset. Export to JSON, CSV, Excel or XML, or pull via the Apify API.

FieldDescription
adIdListing's stable UUID
detailUrlFull xe.gr listing detail URL
titleListing title
propertyTypeProperty type (Apartment, Maisonette, etc.)
transactionTypebuy or rent
itemTypexe.gr item type (re_residence, re_land, etc.)
priceNumeric price
priceTextPrice as displayed (e.g. "€1,150,000")
currencyCurrency code (EUR)
pricePerSqmPrice per square meter (€/m²)
sqMetersSurface area in m²
bedroomsNumber of bedrooms
bathroomsNumber of bathrooms
yearBuiltYear of construction
floorsArray of floors the unit occupies
isRenovatedRenovated flag (from image alt text)
isFurnishedFurnished flag (from image alt text)
locationFull location label
cityCity
areaNeighborhood / area
mainImageUrlMain listing image URL
agentLogoUrlAgent / agency logo URL
agentNameAgent name (often null — xe.gr usually shows only a logo)
isMultipleListingsFlags multi-agent listings of the same property
postedRelativeRelative posting time (e.g. "3 weeks ago")
searchGeoPlaceIdPlace ID used for this search
searchAreaSlugArea slug used for this search
searchVariationListing variation used
searchTransactionTypeTransaction type used
searchItemTypeItem type used
searchBuildingTypeBuilding type used
scrapedAtScrape timestamp (ISO 8601)

💡 Use cases

  • Market research — build €/m² heatmaps by neighborhood, track listing density and time-on-market trends.
  • Investment screening — calculate rental yield ratios (rent vs. sale price) per area.
  • Competitive analytics — track competing agencies via agent logos and listing volume.
  • Lead generation — discover every active agency in a target area and property segment.
  • Price tracking — re-run on a schedule and diff against prior datasets to catch price changes.
  • De-duplication research — use the isMultipleListings flag to detect multi-agent ads for the same property.

❓ Frequently Asked Questions

Is it legal to scrape xe.gr? The Actor only collects publicly available property listing data. You are responsible for using the data in compliance with xe.gr's terms and applicable laws such as GDPR.

Do I need an API key or a login? No. There is no xe.gr account, login or API key required — only an Apify account.

Do I need a proxy? xe.gr does not appear to deploy heavy bot defense, so a datacenter proxy is usually sufficient at low volume. For sustained, large-scale scraping, residential Apify Proxy with country=GR is recommended.

How do I target a specific city or neighborhood? xe.gr filters geographically by Google Place IDs. Open any area page on xe.gr and copy the place ID from the URL — common IDs for Athens, Thessaloniki, Piraeus and more are listed above.

How much data can I get? You can scrape thousands of listings per run — xe.gr returns ~30–100 listings per page and allows up to ~295 pages per filter set. For saturated areas, narrow the search with price ranges for full coverage.

Can I filter by price, size or bedrooms? Yes. You can filter by price range (EUR), surface range (m²) and bedroom range, and choose any of 16 sale/rent variations across property types.

What output formats are supported? Results are stored in a structured Apify dataset and can be exported as JSON, CSV, Excel or XML, or accessed via the Apify API.

⏰ Scheduling & integration

Schedule this Actor on Apify to track the Greek property market daily or weekly. Export results to JSON, CSV or Excel, sync to Google Sheets, or push to your database, BI tools and webhooks through the Apify API.