Orari trenord, corri solo quando ce n’è bisogno

Hai presente quando corri in stazione per prendere il treno al volo e, quando arrivi, ti accorgi che il treno ha 12 minuti di ritardo?

March 30, 2017

Sono un pendolare sui treni delle Ferrovie Nord, tutti i giorni vado avanti e indietro tra Cusano e Milano. I ritmi di noi pendolari sono serrati, perché siamo una categoria costretta alla precisione. Abbiamo gli intertempi memorizzati per gli angoli delle strade: quando giro in via Marconi, per esempio, devono essere al massimo le 8:24 se no per prendere il treno devo correre.

Correre anche solo un minuto al mattino è davvero una cosa antipatica, ma quel minuto di corsa mi fa raggiungere il treno e mi permette di recuperare un’ora che ormai considero preziosa. La cosa che trovo decisamente fastidiosa è arrivare in stazione di corsa e vedere che il mio treno è in ritardo di 12 minuti. Dodici minuti?!? Ma allora potevo camminare!

Dato che Trenord (la società che muove i treni dalle mie parti) è abbastanza solita giocare questi scherzi e dato che sono un programmatore, mi sono costruito uno spider, cioè un software automatico che preleva la mia posizione col GPS del telefono e cerca su Internet le informazioni per ricostruire il tabellone dei treni che c’è nella stazione più vicina. Senza fronzoli, solo il minimo indispensabile per decidere: corro? SI. NO.

Volete usarlo anche voi? Il link è più sotto, qui puoi vedere due schermate:

 

Come si usa il tabellone

Dal vostro cellulare cliccate su questo link orari Trenord e troverete la schermata con l’elenco alfabetico delle stazioni. Cercate la stazione che preferite o cliccate sul bottone “Vicina” in alto a destra. Salvate il collegamento nella Home del vostro cellulare. Così mentre camminate potrete cliccare sull’icona e aprire subito il tabellone della stazione. Ricaricate la pagina per aggiornare gli orari.

I treni scritti con un colore più scuro sono andati, sono quelli il cui orario di partenza più il ritardo fa un’orario che è già passato.

In alto vi sono anche anche tre bottoni verdi per aprire le pagine di “News” e “Avvisi” di Trenord dove vengono segnalati gli scioperi del personale dei treni, e il link alla pagina “check linee” che riporta lo stato delle linee di Trenord. Se  c’è un problema grosso sulla linea lì viene indicato.

Orari: treni stazioni Trenord Ferrovie Nord

Come è fatto lo spider del tabellone degli orari delle Trenord

Lo spider utilizza i dati del sito my-link.it che – per essere buoni – è un sito un po’ demodè,  su cui si possono trovare quasi tutte le informazioni utili per costruire il tabellone: i numeri dei treni (che in realtà ai pendolari non servono), le destinazioni, gli orari di partenza e di arrivo e i ritardi. Mancano i nomi delle linee e le coordinate GPS delle stazioni. Tutti i dati, però, vanno riorganizzati perché su Mylink non sono molto chiari.

Online ho trovato un open data che fornisce le posizioni delle stazioni delle ferrovie Nord sotto forma di coordinate di latitudine e longitudine e ho quindi provveduto ad integrare questi dati nello spider. Il nome delle linee S1, S2, etc. è stato ricavato dalle stazioni iniziali e finali dei treni.

Il recupero delle informazioni e parte dello scraping, cioè l’attività di estrazione dei dati dal codice HTML delle pagine di Mylink sono effettuati sul server con un linguaggio che si chiama PHP e tramite la classe Mini Bots, che ha delle funzioni che semplificano l’acquisizione di pagine web e l’estrazione dei dati dal codice HTML.

Lo spider cerca per stazione utilizzando il form di ricerca di Mylink e per ogni treno indicato tra quelli riportati nella pagina della stazione recupera i dati seguendo i link presenti nei risultati di Mylink, così senza digitare nulla si può vedere subito il tabellone.

Quando si preme sul bottone “Vicina” viene letta la posizione GPS dal vostro cellulare e viene calcolata la distanza tra voi e le stazioni.

Individuato il nome della fermata più vicina viene effettuata la ricerca per ricostruire il tabellone della stazione.

Problemi e cose da migliorare

Il software non è mai perfetto.
I ritardi non sempre sono precisi e spesso non coincidono con quelli indicati nei monitor delle stazioni, ma se siete dei pendolari sapete benissimo che anche i minuti indicati nei tabelloni in stazione non sono sempre corretti. Quindi forse quelli di Mylink sono più precisi (è da verificare però).

Nel 2015 la stazione di Cusano Milanino è stata accorpata con quella di Cormano, diventando così la stazione di Cusano Milanino-Cormano. Purtroppo è contemporaneamente sparita da MyLink, dove non ci sono i dati né per i passaggi dei treni da Cusano, né da Cormano, né dalla nuova stazione di Cusano-Cormano. Pare che sia finita nel sottosopra.

Pertanto se siete a Cusano e al mattino dovete andare verso Milano, allora controllare il tabellone della stazione di Paderno Dugnano, e considerate 3 minuti in più. Questa correzione/estrapolazione potrebbe essere implementata prossimamente.

Sei un programmatore? Se vuoi il sorgente per ampliare e/o migliorare il tool può contattarmi all’indirizzo: pons@rockit.it

 

Author

I'm a software engineer, an everyday web developer and a maker. I usually build sites with PHP, within or without WordPress. I build Internet of Things with Arduino and ESP8266. I'm the founder of Rockit.it and Dailybest.it and I'm actually the Chief Technical Officer of Better Days web agency.

Comments on “Orari trenord, corri solo quando ce n’è bisogno”

Leave a Reply

Your email address will not be published. Required fields are marked with an *

Recommended

Parsing Flickr Feed with PHP tutorial

I’ve spent about 30 minutes to find a javascript embed to print out a custom thumbs list of flickr photos,…

May 30, 2010

How to build a spider… uh, well an email scraper

What is a spider? A spider is a program that automatically navigates web pages to find informations. These informations can…

November 26, 2013

How to use Instagr.am photos on your site

UPDATE: 2013-12-04 I’ve made a method in the Mini Bots PHP Class that lets you retrieve images from instagram without…

August 18, 2011

get MySpace events with a PHP function

Here is a function to read the concerts for a myspace band page. This code retrieves the “shows page” for…

February 21, 2011

PHP bot to get wikipedia definitions

Wikipedia, the collaborative and multilingual encyclopedia project, has a lot of usefull terms defined in its database, you can find…

August 29, 2010

Send push notification to iPhone with PHP and pushme.to

UPDATE: 2013/11/18 This code no longer works, but you can check a similar function here: Sending push notifications with php…

August 9, 2010