Pubblicato il
Aggiornato il
Attualmente, quella che segue, è la trascrizione di un episodio audio caricato su Youtube, quindi portate pazienza se è scritto male
Trenitalia e Notifiche sugli scioperi

A Gennaio, per la prima volta, ho assistito ad una giornata di sciopero di Trenitalia. Purtroppo dopo aver comprato i biglietti. Una cosa ancora più triste è che, tutt’ora, non c’è modo per ricevere delle notifiche sugli scioperi o sulle modifiche al traffico. L’unico modo per rimanere informati sul traffico è quello di accedere a una loro pagina HTML, o dal sito o dall’app (presa comunque dal sito). Non c’è possibilità di ricevere notifiche, né email. Sulla pagina non ci sta nemmeno la possibilità di filtrare le informazioni per regione: in quell’unica pagina HTML vi beccate di tutto: dalle modifiche al traffico in Lombardia alle modifiche al traffico in Sicilia. Tristissimo 🙁 .
FreshRSS
Dopo 6 ore al computer dalla sconfitta alla stazione ho imparato ad usare FreshRSS, che, fra le altre cose, usa un linguaggio che si chiama XPath per individuare i nodi HTML sulle pagine web. Ho capito come fare il parsing di tante pagine per poi ottenere dei feed RSS da poter consultare dalla mia app.
FreshRSS nasce principalmente come aggregatore di feed, anche di diversa natura, tra cui RSS, Atom, HTML, XML e JSON. Dopo aver configurato il parsing, che già dà molto controllo su quello che si può prendere, FreshRSS dà anche tanta possibilità sui filtri e sulle query di ricerca interna poi fare per filtrare ulteriormente i contenuti, e di filtri ce ne stanno tanti. Quello che puoi fare, quindi, è salvare delle ricerche che usano delle determinate query che possono filtrare per titolo, testo, tag, intervalli di date, autori, ID. FreshRSS ti consente di esportare queste query, quindi il feed RSS che ne esce fuori è molto molto raffinato e precisamente per come lo vuoi. Non posso dire quello che ho fatto con Fresh RSS e ne parliamo fra un po’, però una delle poche cose che posso dire di aver fatto con Fresh RSS è stata aver filtrato via delle parole chiave in un feed rss già esistente.
Termini di Servizio dei siti (ToS)

Come vi dicevo, non c’è piena trasparenza da parte mia perché i siti web hanno delle regole di utilizzo chiamate termini di servizio. Sono ovunque su internet. Molti di questi vietano l’utilizzo di strumenti come FreshRSS. Io non ho ben capito se violare i termini di servizio di un sito web sia direttamente anche illegale, però è chiaro che è qualcosa viola un regolamento. Tra l’altro FreshRSS è uno strumento che va hostato.
Sono stato molto fortunato a trovare un’istanza italiana di FreshRSS a cui iscrivermi.
Aggirare i sistemi?
Le aziende implementano diversi ostacoli per far sì che tu non possa usare tool come freshRSS, ma gli strumenti per aggirare questi sistemi sono molteplici. Cookies di sessione custom, header custom con user agent diversi, proxy HTTP, Socks, la qualsiasi. Il materiale su queste cose è di dominio pubblico online, e si trovano un sacco di guide su come fare web scraping in maniera sostenibile nel tempo. Per me non è sostenibile a livello etico e morale, perché ci si ritrova a estrarre contenuti da un’azienda che non vuole.
Io, per esempio, ho visto il codice HTML di una pagina Instagram. È chiaro che Instagram si impegna per far sì che tu non possa usare il codice sorgente della pagina. Dopo le 6 ore che ho investito per capire un po’ tutto sto discorso (Prima i servizi RSS li usavo solo pronti e buoni), ho capito che quella non era stata una vittoria. Ma mi ero sentito molto molto bene e lì per lì ho pensato: “Wow, posso consumare contenuti di tutta internet”.
Conclusioni

Non ho delle vere e proprie conclusioni su quello che c’è da fare. Sono molto contento di aver trovato un tool come FreshRSS e sono davvero tanto contento di aver trovato delle istanze italiane di questa roba.
Quello che vorrò fare prossimamente sarà usare una API per far sì di ottenere i dati in JSON (che FreshRSS) può leggere per far sì di avere il meteo in formato RSS. Secondo me non è impossibile. Dopo un po’ mi romperò il cazzo di assecondare tutta internet affinché le cose vadano fatte male. Alla prossima!
