Skip to main content

🏠 Udziały Bot

Python 3.11+ aiogram 3.x License: MIT Platform: Windows

Telegram bot do wyszukiwania ogłoszeń sprzedaży udziałów w nieruchomościach na 5 polskich portalach ogłoszeniowych (OLX, Otodom, Morizon, Domiporta, Nieruchomości-online).

Bot automatycznie przeszukuje portale nieruchomości w poszukiwaniu ofert sprzedaży udziałów (ułamkowych części własności) i prezentuje wyniki bezpośrednio w Telegramie.


✨ Funkcje

  • 🔍 Przeszukiwanie 5 portali nieruchomości jednocześnie (3-etapowy pipeline: skan → pełne opisy → ranking)
  • 🗺️ Filtrowanie po województwie, mieście, promieniu i cenie
  • 📄 Paginacja wyników z klawiaturą inline
  • 💾 Zapisywanie interesujących ogłoszeń
  • 🛡️ Rotacja proxy przez Tor dla anonimowości
  • ⚡ Asynchroniczne scrapowanie (httpx, curl_cffi, nodriver)
  • 🧠 FSM do konfiguracji filtrów krok po kroku
  • 🚦 Anti-flood middleware

📋 Wymagania

  • Python 3.11 lub nowszy
  • Windows 10/11 (skrypty .bat)
  • Konto Telegram + token bota z @BotFather

🚀 Instalacja (Windows)

Automatyczna (zalecana)

  1. Sklonuj repozytorium:

    git clone https://github.com/your-user/udzialy-bot.git
    cd udzialy-bot
    
  2. Uruchom instalator:

    install.bat
    

    Skrypt automatycznie:

    • Sprawdzi wersję Pythona
    • Utworzy środowisko wirtualne (venv)
    • Zainstaluje zależności
    • Pobierze Tor Expert Bundle
    • Zainstaluje przeglądarki Playwright
  3. Skonfiguruj bota — edytuj config.yaml:

    telegram:
      token: "YOUR_BOT_TOKEN_HERE"
      owner_id: 123456789
    

Ręczna

python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
playwright install chromium

▶️ Uruchomienie

start_bot.bat

Lub ręcznie:

.venv\Scripts\activate
python -m bot.main

🎮 Komendy bota

Komenda Opis
/start Powitanie i menu główne
/search Rozpocznij nowe wyszukiwanie
/filters Ustaw filtry (województwo, miasto, cena)
/saved Pokaż zapisane ogłoszenia
/settings Ustawienia użytkownika
/help Pomoc

📁 Struktura projektu

udzialy-bot/
├── bot/
│   ├── __init__.py
│   ├── main.py              # Entry point, dispatcher
│   ├── config.py            # Pydantic Settings
│   ├── routers/
│   │   ├── __init__.py      # Router registration
│   │   ├── search.py        # /search command
│   │   ├── results.py       # Pagination
│   │   ├── filters.py       # FSM filters
│   │   ├── saved.py         # Saved listings
│   │   └── settings.py      # User settings
│   ├── keyboards/
│   │   ├── __init__.py
│   │   ├── inline.py        # Inline keyboards
│   │   └── reply.py         # Reply keyboards
│   └── middlewares/
│       ├── __init__.py
│       └── throttle.py      # Anti-flood
├── config.yaml              # Configuration
├── requirements.txt         # Dependencies
├── pyproject.toml           # Project metadata
├── install.bat              # Windows installer
├── start_bot.bat            # Windows launcher
├── .gitignore
└── README.md

⚙️ Konfiguracja

Plik config.yaml zawiera pełną konfigurację bota. Wartości można nadpisać zmiennymi środowiskowymi z prefiksem UDZIALY_.

🔒 Bezpieczeństwo

  • Bot działa w trybie single-user (tylko owner_id)
  • Tor zapewnia anonimowość przy scrapowaniu
  • Rotacja User-Agent i fingerprint
  • Rate limiting na portalach

📄 Licencja

MIT License — do użytku osobistego.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

udzialy_bot-3.2.4.tar.gz (130.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

udzialy_bot-3.2.4-py3-none-any.whl (135.4 kB view details)

Uploaded Python 3

File details

Details for the file udzialy_bot-3.2.4.tar.gz.

File metadata

  • Download URL: udzialy_bot-3.2.4.tar.gz
  • Upload date:
  • Size: 130.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.15

File hashes

Hashes for udzialy_bot-3.2.4.tar.gz
Algorithm Hash digest
SHA256 6d0e94ea6ec66355ab94a2f0a883f9d4a221a18e98f0a6a188ace2c8972d37b9
MD5 74d996040fd80bd21c1fa0d21591a5c6
BLAKE2b-256 4fad6aca566aa62ce345fa213b8a7897bb5fae3ea12cc7edd935d9b328a5d956

See more details on using hashes here.

File details

Details for the file udzialy_bot-3.2.4-py3-none-any.whl.

File metadata

  • Download URL: udzialy_bot-3.2.4-py3-none-any.whl
  • Upload date:
  • Size: 135.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.15

File hashes

Hashes for udzialy_bot-3.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 662f0255016f19528768d47262182b46d143b38b6c7f90353f01f087ff9ae6ac
MD5 7d0ffc5c640d5c542324e68a5c3b3321
BLAKE2b-256 2a8e726f39e295880efadebd505adea6781cbc1f44c25ba4cba368d20bd60599

See more details on using hashes here.

Release history Release notifications | RSS feed

3.2.5

2 files

This release

3.2.4 This release

2 files

3.2.3

2 files

3.2.2

2 files

3.2.1

2 files

3.2.0

2 files

3.1.1

2 files

3.1.0

2 files

3.0.2

2 files

3.0.1

2 files

3.0.0

2 files

2.6.0

2 files

2.5.0

2 files

2.4.0

2 files

2.3.0

2 files

2.2.1

2 files

2.2.0

2 files

2.1.3

2 files

2.1.2

2 files

2.1.1

2 files

2.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page