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.5.tar.gz (135.0 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.5-py3-none-any.whl (136.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: udzialy_bot-3.2.5.tar.gz
  • Upload date:
  • Size: 135.0 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.5.tar.gz
Algorithm Hash digest
SHA256 66854dbf33948d0cb9d5dbcd2579a6b87481dbb6935e3f6ff3ca0462dc6cec09
MD5 70195b33eab24029049987bde8d64609
BLAKE2b-256 87c59a619bb72ee1fbbc8155fd28e815e83838cef8d8bac271d85774e179596a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: udzialy_bot-3.2.5-py3-none-any.whl
  • Upload date:
  • Size: 136.9 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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 464e2b303ef102844f241713928cce68cfdb22d04117ff8135bd8a147c902544
MD5 da78242fec2b9f26d1e7b5cb6001eae7
BLAKE2b-256 9a59ae54e6e81b61d8cfb8a219a7dd38c96d813129faee881e984e5c6ad7b98b

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

3.2.5 This release

2 files

3.2.4

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