sabato 7 luglio 2018

I confini di Rapallo - Parte 3: la vittoria!


Eravamo rimasti con dei discorsi in sospeso...
Sia con le query al database di Wigle che con i confini del comune di Rapallo
Ora che ho i confini devo solo trovarne le coordinate, si diceva.
Lo scopo è quello di tenere solo le reti wifi che sono entro i confini di Rapallo, facile no?



Ecco, beh, no...
Alla fine, ho trovato un modo non proprio ortodosso ma funzionale.
Ho usato il plugin di OpenStreetMap , provando casualmente a scaricare una mappa mi si è presentato questo :


Benissimo, ora ho un'indicazione di massima dei confini del mio shapefile, mi faccio una query per ripulire un pochino il database di wigle :

select * from network where lastlat>=44.3331 and lastlat<=44.3987 and lastlon>=9.15914 and lastlon<=9.27648 and capabilities not like 'UMTS%'

Come software ho usato DB Browser for SQLite, ne parlavo qui .

Solo che... ecco, è un browser, non estrae i dati e non salva i risultati delle query.
Per restare sempre molto easy, ho usato SQLite Export  che fa solo questo, ovvero esporta i risultati delle query fatte.


A questo punto, mi sono importato in Qgis il risultato della query per vedere se tutto era andato a buon fine :



Ok, direi che ci siamo!

Ora, i dati ci sono, in KML li esporta ma non sono soddisfatto.
Analizzando il KML ho notato una lieve mancanza, tipo che mancano TUTTI i dati di Wigle che non siano latitudine e longitudine...
Oddio, ad essere sinceri si possono specificare due campi supplementari in fase di export, nel DescriptionField e nel NameField si possono mettere i nomi di due colonne del file CSV e verranno riportati correttamente i dati nel KML, ma non è quello che volevo...


Questo è male, ma Qgis di suo esporta solo così i layer.

Per fortuna, esistono i plugin, io ho usato MMQGIS

Questo plugin è fatto apposta per trattare anche dati che ne vengono da file CSV ed ha una feature che si chiama "Google Maps (tm) KML Export".

Usando questo metodo, è possibile esportare dal CSV tutti i dati che uno vuole, ordinandoli come si vuole (anche con una struttura arbitraria, usando dei tab HTML) ed incorporando anche i dati originali in modo da poter dare la possibilità di ulteriori analisi in QGIS anche a partire dal KML stesso.


Questa è la spartana interfaccia, ma chi se ne frega, funziona!

Una rapida vista in Google Maps di quello che ho esportato :


Ok, direi che più o meno ci siamo. Ora non mi resta che eliminare i punti al di fuori del comune. Ci sarebbe un metodo "alternativo" ovvero esportare solo entro i confini della mappa :


Però come dicevo prima mi esalta poco, perchè non posso esportare nel KML quello che voglio come campi descrittori.
Potrei usare questi dati per una query più precisa, è vero, ma c'è una strada più comoda, ovvero eliminare direttamente i punti dalla mappa.

Si esporta il layer dei dati CSV di Wigle come geometria in formato ESRI e poi lo si edita!



Dopo un pochino di pulizia, il layer si presenta così :



Ok, ora si che ci siamo!
Altro passaggio in MMQGIS per andare in KML con gli attributi che voglio vedere ed ecco la resa :


Direi che ci siamo, finalmente il workflow è completato, in linea di massima.
Restano ancora alcune migliorie da fare, tipo rifinire la query in modo da non esportare la tabella del timestamp e magari filtrare in modo da tenere solo i primi tre ottetti.

Io sinceramente mi sto facendo dei problemi di privacy, ma mi rendo conto che per moltissime persone è una cosa che coinvolge solo le loro foto su Facebook. Ci sono uno sfacelo di reti wifi con il nome di default, mi ci giocherei l'anima che anche la password è di default, ma amen...

Nessun commento:

Posta un commento

Sei davvero sicuro di voler sprecare tempo prezioso per scrivere qualcosa? Non è che preferisci andare su Google?

Cerca nel blog

I post più letti di sempre