TheRealBicingBot, un bot de Telegram que permet obtenir informació en temps real sobre el servei del Bicing. Especialment útil per als operaris que asseguren una bona distribució de les bicicletes, transportant-les amunt i avall en camió. Segon projecte de programació d'AP2! Enunciat disponible aquí.
Podeu provar el bot des d'aquí: t.me/TheRealBicingBot
D'entrada, cal clonar aquest repositori a la vostra màquina local, feu-ho amb la comanda següent:
git clone https://github.com/rorencio/BicingBot.git
En cas de no tenir git
instal·lat, podeu obtenir-lo des d'aquí
Per a instal·lar el projecte, es requereix Python 3. Si no el teniu, podeu descarregar-lo des de la web oficial.
Sigui quin sigui el vostre sistema operatiu, per a fer la instal·lació tan sols cal que obriu un terminal a aquest directori i feu:
pip3 install -r requirements.txt
Això instal·larà automàticament tots els paquets que fan falta. I ja està, no cal res més!
Ara podeu provar localment les funcions de l'arxiu data.py
o bé executar el vostre propi bot (vegeu Deployment).
Per a testejar les funcions, simplement invoqueu-les des del programa data.py
amb els paràmetres que vulgueu.
Per a disposar del vostre propi bot de Telegram, farà falta crear-lo (vegeu BotFather). Un cop tingueu el vostre token deseu-lo al mateix directori on teniu el nostre projecte en un arxiu anomenat token.txt
. Llavors, des d'un ordinador amb connexió a Internet llenceu el programa bot.py
(tot fent python3 bot.py
).
Mentre estigui corrent, podreu usar el bot. Si voleu executar-lo de forma més consistent, considereu usar un servidor.
- NetworkX - Creació i gestió de grafs
- Pandas - Tractament de les dades
- StaticMap - Ploteig dels mapes
- Haversine - Càlcul de distàncies a partir de coordenades
- GeoPy - Traducció d'adreces a coordenades
- Hydrogen - Execució de codi de forma interactiva
- Jupyter Notebook - Execució de codi per blocs
- Marc Vernet - [email protected]
- Marc Gàllego - [email protected]
Vegeu també la llista de col·laboradors que han participat del projecte.
- Part del codi ha estat desenvolupada pels nostres professors d'Algorísmia i Programació II, en Jordi Petit i en Jordi Cortadella.