Disclaimer: This bot works exclusively with the polish website olx.pl and therefore the description is in polish.
OlxSniper jest botem do Telegrama napisanym w Javie w oparciu o oficjalne API TelegramBots oraz bibliotekę HtmlUnit. Używając techniki tzw. web scrappingu bot parsuje na bieżąco pojawiające się oferty wynajmu mieszkań ze strony olx i wysyła natychmiastowe powiadomienia z podsumowaniem każdej nowo wystawionej oferty.
Rosnący popyt na wynajem mieszkania sprawił, że znalezienie sobie lokum w większych miastach bywa czasami bardzo trudne. W okresie wakacyjnym oferty już paręnaście sekund po ich wystawieniu są "nieaktualne" czy też "zarezerwowane". Jeżeli więc odpada wynajęcie mieszkania po znajomości to zostaje nam siedzieć na stronie z ofertami wynajmu i odświeżać ją co 10 sekund - stąd pomysł na bota z altertami.
Dlaczego bot pobiera oferty akurat z OLX?
OLX jest największą bazą ofert wynajmu mieszkań. Nowe ogłoszenie pojawia się tam co ok. kilka minut (w większych miastach).
Te grupy wysyłają powiadomienia o nowych ofertach mieszkań:
- OLX SnIpEr Warszawa - powiadomienia o ofertach mieszkań na wynajem w Warszawie
- OLX SnIpEr Kraków - powiadomienia o ofertach mieszkań na wynajem w Krakowie
- OLX SnIpEr Gdańsk - powiadomienia o ofertach mieszkań na wynajem w Gdańsku
- OLX SnIpEr Rzeszów - powiadomienia o ofertach mieszkań na wynajem w Rzeszowie
- OLX SnIpEr Łódź - powiadomienia o ofertach mieszkań na wynajem w Łodzi
Aby dostawać alerty na telefon najlepiej jest pobrać aplikację mobilną Telegram [Android / IOS] a następnie dołączyć do grupy.
Zalety
- Możliwość ustawienia dowolnego miasta wspieranego przez OLX
- Możliwość ustawienia filtrów cenowych
- Dostososowanie bota do własnych potrzeb poprzez zmianę kodu
Wady
- Bot działa tylko do póki odpalony jest proces na komputerze (przydałby się zewnętrzny VPS)
- Wymogiem jest pewne pojęcie o programowaniu w Javie
- Konto Telegram + aplikacja Telegram (może być web app, mobile app lub desktop app)
- Środowisko Java IDE do modyfikacji i kompilacji kodu
- Maven do pobrania dependencies
- Inicjalizacja bota po stronie Telegram Bot API
- Otwórz czat z @BotFather'em na Telegramie - jest do bot, który służy do inicjowania nowych botów.
- Użyj komendy
/newbot
, @BotFather zapyta wtedy o nick oraz unikalną nazwę użytkownika dla nowego bota. - Po udanym dostarczeniu nicku oraz nazwy użytkownika otrzymasz komunikat zwrotny z unikalnym kluczem API.
- Stworzenie grupy Telegramowej, w której będzie operować bot
- Utwórz nową grupę na Telegramie.
- Dodaj do niej stworzonego przez siebie bota.
- Nadaj botowi prawa administratora grupy (aby mógł wysyłać oraz usuwać wiadomości).
- Kompilacja własnego OlxSnipera
-
Pobierz repozytorium z githuba.
-
Pobierz wszystkie dependencies przy pomocy Mavena.
-
Uzupełnij stałe w klasie Main o swój klucz API oraz unikalny username bota.
private final static String BOT_TOKEN_SECRET = "api_secret"; private final static String BOT_USERNAME = "bot_username";
-
Skompiluj i uruchom.
-
Ustaw bota i aktywuj skanowanie przy pomocy komend.
-
Na dzień dzisiejszy bot wspiera następujące komendy.
Komenda | Opis | Przykład |
---|---|---|
/start | Uruchom skanowanie w poszukiwaniu nowych ofert | - |
/stop | Zatrzymaj skanowanie | - |
/setup city [city*] | Ustaw miasto docelowe | /setup city warszawa |
/setup priceFrom [minimalPrice] | Ustaw dolny filtr cenowy | /setup priceFrom 850 |
/setup priceTo [maximalPrice] | Ustaw górny filtr cenowy | /setup priceTo 2200 |
/help | Uzyskaj listę dostępnych komend | - |
/say [text] | Komenda pomocnicza. Powiedz coś jako bot | /say Hej to ja bot! |
* - argument podawany w języku polskim