Turkish Real Estate Scraper
Pricing
Pay per usage
Go to Apify Store

Turkish Real Estate Scraper
Scrapes property listings from 6 major Turkish real estate portals: CB, Century21, ERA, RealtyWorld, Remax and Turyap. Extracts price, location, coordinates, room count, size and more. Resume-capable via checkpoints. Outputs normalized JSON ready for analysis.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Vide Supra
Maintained by Community
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Turkish Real Estate Portal Scraper
Türkiye'nin 6 büyük emlak portalından konut ve ticari ilan verilerini toplayan Apify Actor.
| Portal | Yöntem | Kategoriler |
|---|---|---|
| CB.com.tr | HTTP/urllib | Konut Satılık, Kiralık, Devren |
| Century21.com.tr | HTTP/urllib | Konut Satılık, Kiralık |
| ERA.com.tr | HTTP/urllib | Konut Satılık, Kiralık |
| RealtyWorld.com.tr | HTTP/urllib | Tüm kategoriler |
| Remax.com.tr | Selenium | Konut/Ticari Satılık, Kiralık, Devren |
| Turyap.com.tr | Selenium | Tüm kategoriler |
Özellikler
- Her portaldan CanonicalListing formatında normalize veri
- JSON checkpoint sistemi → çökme/durdurma sonrası kaldığı yerden devam
- Remax için SQLite tabanlı 2-aşamalı scraping (URL toplama → detay çekme)
- Apify Dataset'e otomatik push
- Tüm kaynaklar bağımsız çalışır, istediğiniz kombinasyonu seçebilirsiniz
Input Parametreleri
| Alan | Tip | Varsayılan | Açıklama |
|---|---|---|---|
sources | string[] | tüm kaynaklar | Çalıştırılacak portal listesi |
maxPages | integer | 0 (sınırsız) | Kategori sayfası limiti |
requestDelay | number | 1.5 | İstekler arası bekleme (saniye) |
headless | boolean | true | Selenium headless modu |
Output Şeması
Her ilan aşağıdaki alanlarla Apify Dataset'e yazılır:
{"source": "remax","url": "https://www.remax.com.tr/ilan/...","title": "3+1 Satılık Daire","listing_no": "12345","product_id": "12345","category": "konut_satilik","transaction_type": "satilik","property_type": "Daire","price": "2500000","currency": "TL","location": "İstanbul","district": "Kadıköy","neighborhood": "Moda","m2_net": "120","m2_brut": "140","room_count": "3+1","floor": "4","total_floors": "7","build_year": "2015","heating": "Kombi","description": "...","latitude": 40.9854,"longitude": 29.0345,"scraped_at_utc": "2024-01-15T10:30:00+00:00"}
Yerel Geliştirme
Gereksinimler
- Python 3.11+
- Google Chrome + ChromeDriver (PATH'te)
Kurulum
git clone https://github.com/YOUR_USERNAME/turkish-real-estate-scraper.gitcd turkish-real-estate-scraperpip install -r requirements.txt
Çalıştırma (Apify CLI ile)
pip install apify-cliapify run
Çalıştırma (doğrudan Python)
$python -m src.main
Apify'e Yükleme
Yöntem 1: GitHub üzerinden (Önerilen)
- Bu repoyu GitHub'a push edin
- Apify Console → Actors → Create new Actor
- Link Git repository seçin
- GitHub repo URL'nizi girin
- Build butonuna basın
Yöntem 2: Apify CLI
apify loginapify push
Proje Yapısı
.├── .actor/│ ├── actor.json # Actor metadata│ └── input_schema.json # Input parametreleri├── src/│ ├── __init__.py│ ├── main.py # Apify Actor giriş noktası│ ├── models.py # CanonicalListing dataclass│ ├── http_utils.py # HTTP yardımcıları│ ├── checkpoint.py # JSON checkpoint sistemi│ ├── cb_scraper.py│ ├── century21_scraper.py│ ├── era_scraper.py│ ├── realtyworld_scraper.py│ ├── remax_db.py # Remax SQLite yardımcıları│ └── remax_scraper.py│ └── turyap_scraper.py├── Dockerfile├── requirements.txt└── README.md
Lisans
Özel kullanım. Yeniden dağıtım yasaktır.