Hlídá nové nabídky na populárních realitních serverech.
Docker image (aktuální z master větvě) - janch32/web-scraper-nabidek-pronajmu
Tato aplikace byla vytvořena pro osobní použití, takže obsahuje hardkódované údaje pro hledání pronájmu bytů v Brně (ale nemělo by být zas tak moc těžký to upravit).
Nicméně je možné při spuštění aplikace nakonfigurovat, které dispozice bytu (počet místností) hledat.
- BRAVIS
- EuroBydlení
- iDNES Reality
- REALCITY
- realingo
- Remax
- Sreality
- UlovDomov
- BezRealitky
- Lze spustit lokálně nebo v Dockeru
- Lokální spuštění
- Je vyžadován Python 3.11+
- Před prvním spuštěním nainstalujte závislosti
make install
- Vytvořte si lokální soubor
.env.local
a nastavte v něm všechny požadované parametry (minimálně však Discord token, cílovou roomku a požadované dispozice bytu) - následně je možné spustit
make run
nebo v debug režimumake debug
- Spuštění v Dockeru
- Přiložená Docker Compose konfigurace souží pro vývoj. Stačí ji spustit příkazem
docker-compose up -d
(má zapnutý debug mód) - K dispozici je také sestavený Docker obraz v Ducker Hub, vždy aktuální s master větví -
janch32/web-scraper-nabidek-pronajmu
- Kromě toho je možné vytvořit "produkční" Docker image díky
Dockerfile
. Při spuštění kontejneru je nutné nastavit všechny požadované env proměnné (ne v v .env.local!)
- Přiložená Docker Compose konfigurace souží pro vývoj. Stačí ji spustit příkazem
Aplikace při prvním spuštění nevypíše žádné nabídky, pouze si stáhne seznam těch aktuálních. Poté každých 30 mint (nastavitelné přes env proměnné) kontroluje nové nabídky na realitních serverech a ty přeposílá do Discord kanálu. Aplikace nemusí běžet pořád, po opětovném spuštění pošle všechny nové nabídky od posledního spuštění.
DISCORD_OFFERS_CHANNEL
- Unikátní číslo Discord kanálu, kde se budou posílat nabídky. Návod pro získání IDDISCORD_DEV_CHANNEL
- Unikátní číslo Discord kanálu, kde se budou posílat chyby programu.DISCORD_TOKEN
- Obsahuje Discord token bota. Návod pro získání tokenuDISPOSITIONS
- Obsahuje seznam dispozic oddělených čárkou. Např.:DISPOSITIONS=2+kk,2+1,others
1+kk
1+1
2+kk
2+1
3+kk
3+1
4+kk
4+1
5++
(5+kk a více místností)others
(jiné, atypické nebo neznámé velikosti)
Tyto hodnoty jsou nastavené pro bězné použití a není potřeba ji měnit. Zde je každopádně popis těchto hodnot.
DEBUG
(boolean, výchozí vypnuto). Aktivuje režim ladění aplikace, především podrobnějšího výpisu do konzole. Vhodné pro vývoj.FOUND_OFFERS_FILE
Cesta k souboru, kam se ukládají dříve nalezené nabídky. Aplikace si soubor vytvoří, ale složka musí existovat. Pokud aplikace nebyla nějakou dobu spuštěna (řádově týdny) je dobré tento soubor smazat - aplikace by toto vyhodnotila jako velké množství nových nabídek a zaspamovala by Discord kanál.REFRESH_INTERVAL_DAYTIME_MINUTES
- interval po který se mají stáhnout nejnovější nabídky Výchozí 30min, doporučeno minimálně 10minREFRESH_INTERVAL_NIGHTTIME_MINUTES
- noční interval stahování nabídek. Jde o čas mezi 22h-6h. Výchozí 90min, doporučeno vyšší než denní interval