Bu proje, Sahibinden.com web sitesinden araç ilan verilerini toplamak için Python tabanlı bir web kazıyıcı(scrape) sağlar. Nodriver tarayıcı otomasyonu ve SQLite3 veya Postresql veri saklama için kullanılmaktadır.
- Otomatik Veri Çekme: Sahibinden.com'da gezinir, filtre uygular ve araç ilanlarını çeker.
- Veri Depolama: Çekilen veriler SQLite3 veya Postresql veritabanına kaydeder.
- Özelleştirilebilir Filtreler: Araç modeli, yıl aralığı, şanzıman türü ve motor hacmine göre filtreleme yapabilir.
Python 3.x
Chrome
DB Browser?
PostreSQL?
Kullanılan python kütüphaneleri.
nodriver
undetected_chromedriver
bs4
psycopg2
Bu projede PostreSQL kullanılmaktadır, internetten kurulum sağlayabilirsiniz.
postgres
adlı bir veritabanı oluşturun (veya bağlantı ayarlarını scriptte düzenleyin).- Varsayılan script bilgileri:
- Host:
localhost
- Port:
5432
- Kullanıcı:
postgres
- Şifre:
1234
- Host:
- Depoyu klonlayın:
git clone https://github.com/0Baris/sahibinden-scraper.git
cd sahibinden-scraper
pip install -r requirements.txt
- main.py'de belirtilen yerleri özelleştirin:
arama = "Volkswagen Golf" # Arama yapmak istediğiniz kelime veya model adı.
yıl_min = "2012" # Opsiyonel: Minimum yıl.
yıl_max = "" # Opsiyonel: Maksimum yıl.
motor_hacmi = "" # Opsiyonel: Motor hacmi filtresi (örnek: "1.6").
vites = "Otomatik" # Opsiyonel: Şanzıman türü ("Manuel" veya "Otomatik").
- Paylaşılan .env Dosyasını düzenleyin.
# Veritabanı tercihi "sqlite" veya "postgres" başka bir şey denemeyin hata alırsınız.
DB_TYPE=postgres
# SQLite veritabanı ismi.
SQLITE_DB_PATH=sahibinden.db
# PostreSQL yapılandırması.
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_DB=veritabanı_ismi
POSTGRES_USER=kullanıcı_adı
POSTGRES_PASSWORD=sifre
- Dosyayı çalıştırın:
python main.py
- Veriler tercih ettiğiniz veritabanına kaydedilecektir.
Herhangi bir geri bildiriminiz veya sorununuz varsa bariscem@proton.me adresinden bana ulaşabilirsiniz.