Conditions des patinoires de Montréal


#1

Salut,

Au cas où il y ait des amateurs de patinage ici

J’ai fait un petit script sans prétention qui me permet d’avoir les patinoires ouvertes et leurs conditions. Il parse simplement le XML que la ville de Montréal met à disposition en données ouvertes.

Lister les patinoires ouvertes :

$ ./patinoire.py list --open
Skating rink                                          Open
----------------------------------------------------  ----
Patinoire Bleu Blanc Bouge du parc Hayward (PSE)      1
Patinoire Bleu-Blanc-Bouge, Parc Confédération (PSE)  1
Patinoire réfrigérée, Lac aux Castors (PP)            1

Lister les patinoires du Plateau-Mont-Royal :

$ ./patinoire.py list --borough pmr
Skating rink                                           Open
-----------------------------------------------------  ----
Grande patinoire avec bandes, La Fontaine (PSE)        0
Patinoire avec bandes, Baldwin (PSE)                   0
Patinoire avec bandes, Jeanne-Mance (PSE)              0
Patinoire avec bandes, Sir-Wilfrid-Laurier no 1 (PSE)  0
Patinoire avec bandes, Sir-Wilfrid-Laurier no 2 (PSE)  0
Patinoire avec bandes, Sir-Wilfrid-Laurier no 3 (PSE)  0
Patinoire De Gaspé/Bernard (PSE)                       0
Patinoire de patin libre, Baldwin (PPL)                0
Patinoire de patin libre, Jeanne-Mance (PPL)           0
Patinoire de patin libre, Sir-Wilfrid-Laurier (PPL)    0
Patinoire décorative, De Lorimier (PP)                 0
Patinoire décorative, La Fontaine (PP)                 0

Afficher les conditions d’une patinoire en particulier :

$ ./patinoire.py conditions "Patinoire réfrigérée, Lac aux Castors (PP)"
                                            Open  Cleared  Sprayed  Resurfaced  Condition   
------------------------------------------  ----  -------  -------  ----------  ----------  
Patinoire réfrigérée, Lac aux Castors (PP)  1     1        1        1           Excellente 

Et une fonction pratique, pour être notifié d’un changement de condition sur une patinoire :

$ ./patinoire.py watch "Patinoire réfrigérée, Lac aux Castors (PP)"
                                            Open  Cleared  Sprayed  Resurfaced  Condition
------------------------------------------  ----  -------  -------  ----------  ----------
Patinoire réfrigérée, Lac aux Castors (PP)  1     1        1        1           Excellente
Updated on 2018-12-08 09:05:28
$ ./patinoire.py watch "Patinoire réfrigérée, Lac aux Castors (PP)"
$
[a few days later]
$ ./patinoire.py watch "Patinoire réfrigérée, Lac aux Castors (PP)"
                                            Open  Cleared  Sprayed  Resurfaced  Condition
------------------------------------------  ----  -------  -------  ----------  ----------
Patinoire réfrigérée, Lac aux Castors (PP)  1     1        1        1           Bonne
Updated on 2018-12-10 09:03:56

La commande ne retournera rien tant que les conditions resteront les mêmes. Pratique pour piper ça dans mail ou sendxmpp en cron.


#2

Y’avait aussi une application Android (libre!), elle semble abandonnée:


#3

Et le site (2011)
http://patinermontreal.ca/


#4

cool merci! c’est les données actuelles? je savais pas que la patinoire du mont-royal était ouverte!

c’est quoi PP, PPL, PSE?


#5

C’est caché tout en bas de la page
http://ville.montreal.qc.ca/portal/page?_pageid=5798,94909650&_dad=portal&_schema=PORTAL

  • PP : Patinoire paysagée
  • PSE : Patinoire sport d’équipe
  • PPL : Patinoire patin libre

#6

D’autres apps de la ville (aucune libre que je sache): http://donnees.ville.montreal.qc.ca/portail/applications/


#7

Oui c’est les données actuelles. De ce que je comprends, la mise à jour des patinoires se fait par arrondissement. Je n’ai pas trouvé d’info précise sur la mise à jour du flux XML en tant que tel, c’est a priori aléatoire.


#8

Ce pourrait être un Service FACILes.

Les citoyens comprendrait les bienfaits de la contribution au Libre.


#9

Salut,
Je confirme que les données de patinermontreal.ca (et de l’app android) sont actuelles. Les conditions des patinoires sont mises à jour par chaque arrondissement, à une fréquence variable. Souvent plusieurs fois par jour pour une patinoire ouverte. Un cronjob de patinermontreal.ca se connecte au xml de la ville chaque 10 minutes pour actualiser les conditions.

Le code source du site web et de l’API est ici


réalisé à l’origine par James McKinney en ruby. Je m’occupe du maintien depuis quelques années.
et pour la petite histoire: http://montrealouvert.net/2010/12/23/patiner-montreal-ca-un-entrevue-avec-le-createur/

celui de l’app android est ici


je n’ai pas fait de mise à jour pour l’app android depuis janvier 2014, faute de temps et du faible nombre d’utilisateurs. Mais elle fonctionne toujours :slight_smile:

Pour ceux que ça intéresse, les coordonnées GPS sont dans un google doc!
geocode: patinoires dont les conditions sont fournies par la ville
https://docs.google.com/spreadsheets/d/1E_iNQCWinecToC9BGn2S0xMltkTemSL-ScY0vD5R4xQ/pub?hl=en_US&hl=en_US&hl=en_US&single=true&gid=2
manual: patinoires ajoutées manuellement, conditions restent inconnues. Ne font pas partie du xml de la ville
https://docs.google.com/spreadsheets/d/1E_iNQCWinecToC9BGn2S0xMltkTemSL-ScY0vD5R4xQ/pub?hl=en_US&hl=en_US&hl=en_US&single=true&gid=0

un exemple des resultat de l’API est ici
http://www.patinermontreal.ca/data.json


#10

oh cool l’app! ça serait sympa d’avoir ça sur f-droid! :slight_smile: