Sahibinden Real Estate Listings Scraper avatar

Sahibinden Real Estate Listings Scraper

Pricing

from $6.99 / 1,000 listings

Go to Apify Store
Sahibinden Real Estate Listings Scraper

Sahibinden Real Estate Listings Scraper

Sahibinden real estate scraper — prices, rooms, sizes, GPS, photos, seller info, and phone numbers from sahibinden.com. All 81 Turkish cities, sale/rent/daily, residential to land. Cloudflare-bypassed via Unblocker, 25+ fields per listing, phone deobfuscation. JSON or CSV out.

Pricing

from $6.99 / 1,000 listings

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

3 days ago

Last modified

Share

Sahibinden Real Estate Listings Scraper

Scrape real estate listings from sahibinden.com — Turkey's largest classifieds platform — with prices, rooms, sizes, GPS coordinates, photos, seller info, and phone numbers. Covers all 81 Turkish provinces across sale, rent, and daily rental listings.

InputRow(s) emitted
City + listing type (e.g. Istanbul, Sale)One row per listing, 25+ fields
Start URL (e.g. sahibinden.com/satilik-daire/istanbul)One row per listing, 25+ fields
Filters (price, rooms, district, sort)Filtered listings, one row each

Apify Unblocker clears Cloudflare. No login required for search results. No browser, no CAPTCHA solver.

Why Use This Scraper

  • No login required — Apify Unblocker clears sahibinden's Cloudflare bot management so search results load without session cookies.
  • Phone numbers included — extracts seller phone numbers from listing detail pages (opt-in add-on; owner listings only, agents hide phones).
  • All 81 cities — every Turkish province, with Istanbul split into European and Asian sides.
  • Sale, rent, and daily rentals — three listing types across residential, commercial, land, and whole-building categories.
  • 25+ fields per listing — price, rooms, gross/net size, building age, floor, heating, bathroom count, furnished, deed status, GPS, and the full attribute map from the detail page.
  • Unlimited pagination — walks every result page until listings run out or your cap is hit.

Overview

Sahibinden.com is Turkey's dominant property classifieds site, sitting behind Cloudflare bot management. This actor routes through Apify Unblocker to clear Cloudflare, fetches search result pages, parses listing rows with cheerio, and optionally fetches each detail page for full attributes and seller phone numbers. Phone numbers are CSS-obfuscated on the page; the actor deobfuscates them from the embedded script blocks.

Supported Inputs

  • Listing type: Sale, Rent, Daily Rental
  • Property category: Residential, Commercial, Land, Building
  • City: all 81 Turkish provinces (Istanbul split European/Asian)
  • Districts: one or more district names within a city
  • Price range: min/max with currency (TRY, USD, EUR, GBP)
  • Rooms: Turkish format (1+0, 1+1, 2+1, 3+1, etc.)
  • Sort: Newest, Oldest, Price Low/High, Smart Sort
  • Start URLs: one or more sahibinden search URLs to scrape directly
  • Session cookies: optional, for authenticated features (see FAQ)
  • Max results and max pages caps

Use Cases

  • Property research across Turkey with detailed attributes (price, area, building age, deed status).
  • Lead generation by extracting seller phone numbers and agency profiles.
  • Market analysis comparing room counts, sizes, and price ranges.
  • Monitoring specific districts or property types over time.

How It Works

How the Sahibinden scraper works

  1. You pick a listing type, city, and optional filters (price, rooms, districts), or provide start URLs.
  2. The actor builds search URLs on www.sahibinden.com and fetches them through Apify Unblocker.
  3. Unblocker clears Cloudflare; the search page returns ~20 listings per page.
  4. The cheerio parser extracts listing ID, title, price, rooms, area, location, date, and thumbnail from each row.
  5. The actor walks pages until results run out or your cap is hit.
  6. When phone extraction is on, each listing's detail page is fetched for 25 full attributes, GPS coordinates, and seller phone numbers.
  7. Results land in the Apify dataset, ready to export as JSON or CSV.

Input Configuration

FieldTypeDefaultDescription
listingTypeselectSaleSale, Rent, or Daily Rental
propertyCategoryselectResidentialResidential, Commercial, Land, or Building
cityselectIstanbulOne of 81 Turkish provinces
districtarray[]District names within the chosen city
sortByselectNewestNewest, Oldest, PriceLow, PriceHigh, Smart
extractPhoneNumbersbooleanfalseFetch detail pages for full attributes + phone numbers
maxResultsinteger100Cap on total listings scraped
minPrice / maxPriceinteger—Price range filter
currencyselectTRYTRY, USD, EUR, GBP
roomsarray[]Room counts in Turkish format (e.g. 2+1, 3+1)
maxPagesinteger—Cap on pages fetched
startUrlsarray[]Direct sahibinden search URLs to scrape instead of building from filters
sessionCookiesstring—Optional sahibinden login cookies (name=value; name2=value2) for authenticated features
proxyobject{ useApifyProxy: true, apifyProxyGroups: ["UNBLOCKER"] }Proxy configuration; Unblocker is required for Cloudflare

Example input

{
"listingType": "Sale",
"propertyCategory": "Residential",
"city": "Istanbul",
"maxResults": 50,
"extractPhoneNumbers": true,
"sortBy": "Newest"
}

Output Overview

Each row is one sahibinden listing. Search-only rows (phone extraction off) carry title, price, rooms, size, location, date, and thumbnail. Detail rows (phone extraction on) add 25 attributes, GPS, seller info, and phone numbers.

Output Samples

{
"listingId": "1345942624",
"url": "https://www.sahibinden.com/1345942624",
"title": "SAHİBİNDEN MEYDANA YÜRÜME MESAFESİNDE 2+1 BAHÇE KATI",
"price": 1399999,
"currency": "TRY",
"rooms": "2+1",
"size": "100",
"netSize": "95",
"buildingAge": "6-10 arası",
"floor": "Bahçe Katı",
"totalFloors": null,
"heating": "Kombi (Doğalgaz)",
"bathroomCount": "1",
"furnished": false,
"city": "İstanbul",
"district": "Esenyurt",
"neighborhood": null,
"address": "Barış Mah. Sakarya Cad. No : 2/9",
"latitude": 41.008749,
"longitude": 28.657104,
"imageUrl": "https://i0.shbdn.com/photos/59/42/24/lthmb_1345942624x1k.jpg",
"sellerName": null,
"sellerId": null,
"sellerProfileUrl": null,
"isOwner": true,
"phoneNumbers": ["05354584255"],
"listingDate": "17 Ekim 2026",
"attributes": {
"İlan No": "1345942624",
"Emlak Tipi": "Satılık Daire",
"m² (Brüt)": "100",
"m² (Net)": "95",
"Oda Sayısı": "2+1",
"Bina Yaşı": "6-10 arası",
"Isıtma": "Kombi (Doğalgaz)",
"Eşyalı": "Hayır",
"Kullanım Durumu": "Boş",
"Krediye Uygun": "Evet",
"Kimden": "Sahibinden"
},
"scrapedAt": "2026-10-17T16:46:54.059Z"
}

Key Output Fields

FieldDescription
listingIdSahibinden classified ID
price / currencyNumeric price + currency code
roomsTurkish format (e.g. 2+1 = 2 bedrooms + 1 living room)
size / netSizeGross and net area in m²
buildingAge / floor / totalFloorsBuilding age, floor, total floors
heating / bathroomCount / furnishedHeating type, bathroom count, furnished flag
city / district / neighborhood / addressLocation hierarchy
latitude / longitudeGPS coordinates (detail page only)
imageUrlListing thumbnail URL
sellerName / sellerId / isOwnerSeller info and owner-vs-agent flag
phoneNumbersExtracted phone numbers (owner listings only; agents hide phones)
attributesFull key-value map of all 25 detail-page attributes
listingDateListing date (Turkish format)

Pricing

EventWhenPrice
Actor StartRun starts (per GB memory)$0.005
ListingOne listing pushed to dataset$0.00699
Phone numberA phone number extracted from a detail page$0.00499

What makes this richer than the competition

CapabilityCompetitor actorsThis actor
Cloudflare bypassMost use Playwright (slow, fragile)Apify Unblocker (fast, no browser)
Login requiredSome require your session cookiesNot required for search results
Fields per listing10-15 typical25+ from detail page
Phone extractionOften missing or brokenCSS deobfuscation from script blocks
GPS coordinatesRareFrom detail page data attributes
PaginationOften capped at 20Unlimited until cap or results end

Notes & limitations

  • Speed: Unblocker takes ~30s per search page and ~60s per detail page. A 100-listing run with phone extraction takes ~10 minutes. Without phone extraction, search-only is much faster.
  • Phone numbers: only "Sahibinden" (owner) listings expose phones. Agency listings hide phone numbers on sahibinden — this is a site-side restriction, not an actor limitation.
  • Session cookies: optional. The actor works without them for search results. Cookies unlock authenticated features (favorites, saved searches) but are not needed for standard scraping.
  • Currency: prices are returned in the listing's original currency. Use the currency input to filter by a specific currency.

FAQ

Do I need to log in to sahibinden? No. Apify Unblocker clears Cloudflare and the search page returns listings without login. Session cookies are optional.

Why are phone numbers empty for some listings? Sahibinden hides phone numbers for agency listings. Only "Sahibinden" (owner-direct) listings expose phones. This is a site-side restriction.

Why is the run slow? Unblocker solves Cloudflare per request, which takes ~30-60s each. This is the tradeoff for not using a fragile browser-based approach.

Can I scrape without phone extraction? Yes. Set extractPhoneNumbers: false (default) and you get search-row data only — much faster, no detail page fetches.

What's the difference between size and netSize? size is gross (brüt) area, netSize is net (net) area, both in m². Both come from the detail page.

Support

For bugs, feature requests, or help, open an issue on the actor's Apify Store page or contact the maintainer.

Additional Services

Need a custom filter, a specific province deep-scan, or integration with your CRM? Custom work available — reach out via the Apify Store.

Explore More Scrapers

🤖 For AI Agents & LLM Apps

This actor scrapes sahibinden.com Turkish real estate listings via Apify Unblocker (Cloudflare bypass). No login required.

Minimal tested input:

{ "listingType": "Sale", "city": "Istanbul", "maxResults": 10 }

Flat output fields per row: listingId, url, title, price, currency, rooms, size, netSize, buildingAge, floor, totalFloors, heating, bathroomCount, furnished, city, district, neighborhood, address, latitude, longitude, imageUrl, sellerName, sellerId, sellerProfileUrl, isOwner, phoneNumbers (array), listingDate, attributes (object), scrapedAt.

Billing: $0.005 start + $0.00699/listing + $0.00499/phone (only when extractPhoneNumbers: true and a phone is found).

Behaviors: extractPhoneNumbers: false returns search-row data only (fast). startUrls overrides filter-based URL building. sessionCookies is optional (Unblocker handles Cloudflare without login).

⚠️ Disclaimer

Sahibinden and the sahibinden.com brand are trademarks of Sahibinden Bilgi Teknolojileri Pazarlama ve Ticaret A.Ş. This actor is not affiliated with, endorsed by, or sponsored by Sahibinden. It is an independent tool that accesses publicly available web pages. Users are responsible for complying with sahibinden's Terms of Service and all applicable laws when using this actor.

SEO Keywords

sahibinden scraper, sahibinden real estate scraper, sahibinden listings, turkey property scraper, istanbul real estate, sahibinden phone numbers, sahibinden rent, sahibinden sale, turkish classifieds scraper, property listings turkey, sahibinden api, sahibinden data extraction, real estate leads turkey, sahibinden apartments, sahibinden daire