Scraping e predizione del crimine: la quantità non batte la qualità
White paper divulgativo
Abstract
Molti strumenti promettono mappe “quasi in tempo reale” e previsioni del crimine a partire da fonti aperte (scraping di notizie e segnalazioni). Questo documento mira a mostrare, in modo accessibile anche ai non addetti, perché tali approcci producano spesso solo cartografia del rumore : bias di copertura, duplicati, geolocalizzazioni imprecise, tassonomie arbitrarie, validazioni autoreferenziali e latenze operative. Viene proposto quindi un percorso alternativo, fondato su un concetto molto semplice basato su anni di studio del crimine urbano pochi dati ma buoni, con focus solo su reati predatori che hanno la caratteristica di essere ciclici e stanziali (furti, borseggi, rapine, truffe), coerente con il principio 80/20. Viene sottolineata l’indispensabilità di criminologi e analisti del crimine (non solo ingegneri) nella progettazione, codifica, validazione e governo degli strumenti; ciò perchè il quadro legale (GDPR art. 10; d.lgs. 196/2003 art. 2-octies; DPIA) impone governance rigorosa per evitare illeciti e contenziosi.
1) Perché lo scraping piace (e perché non basta)
L’idea è seducente: se una notizia è pubblica online, possiamo raccoglierla con un crawler, metterla su una mappa e – magari – prevedere dove avverranno i prossimi reati. Dal punto di vista comunicativo funziona: una heatmap è intuitiva, sembra scienza. Ma una mappa non è automaticamente vera. Senza un processo serio di verifica e normalizzazione, si rischia di confondere l’eco mediatico con la realtà del fenomeno.
2) Cos’è lo scraping (spiegato bene)
2.1 Definizione semplice
Web scraping significa usare software per leggere automaticamente pagine web e estrarre informazioni (titoli, testi, date, luoghi, tabelle). È come se un lettore instancabile aprisse tanti articoli, copiasse i pezzi utili e li incollasse in un foglio strutturato.
2.2 Come funziona, passo per passo
- Raccolta: un crawler visita una lista di siti e scarica le pagine (HTML).
- Parsing: un parser “smonta” l’HTML e trova gli elementi utili (titolo, data, testo, indirizzi).
- Estrazione: si salvano i campi chiave in un database.
- Normalizzazione: pulizia, deduplicazione, formati coerenti.
- Arricchimento: geocodifica (da “via Roma” a coordinate), classificazioni.
# Pseudocodice illustrativo
for url in elenco_siti:
html = scarica(url)
articoli = estrai_articoli(html)
for a in articoli:
record = {
"titolo": a.titolo,
"data": a.data_pubblicazione,
"testo": a.testo,
"luogo": estrai_luogo(a.testo),
}
salva(record)
# Segue: deduplica(), geocodifica(), classifica(), valida()
2.3 Scraping ? Crawling ? API
- Crawling: la “passeggiata” automatica tra le pagine per trovarle e scaricarle.
- Scraping: l’estrazione dei dati dalle pagine scaricate.
- API: “sportelli ufficiali” per ottenere dati già strutturati.
2.4 È sempre legale?
No. Che una pagina sia pubblica non significa che i dati possano essere raccolti, indicizzati e riutilizzati liberamente.
Termini d’uso, robots.txt (segnale, non legge), e soprattutto norme sulla protezione dei dati si applicano.
Se il dato riguarda reati o persone identificabili, il perimetro è stringente (vedi Normativa).
2.5 Perché lo scraping “di reati” è delicato
- Rischio di trattare dati giudiziari (GDPR art. 10) senza base legale adeguata.
- Rischio di errori (duplicati, luoghi imprecisi) che producono mappe ingannevoli.
- Rischio di stigmatizzazione di aree/attività e contenziosi.
2.6 Esempio narrativo (dal sito alla mappa)
“Furto nella zona stazione”. Lo scraper lo legge e salva. Il sistema colloca l’evento al centro dell’area: se l’area è vasta, l’evento finisce nel quartiere sbagliato. Altri due siti riprendono la stessa notizia: senza deduplica, conterai tre furti. La mappa finirà per mostrare un “picco” fasullo.
3) Fondamentali: definizioni rapide
OSINT e scraping
OSINT: informazioni da fonti aperte (media, siti, blog, registri pubblici).
Scraping: estrazione automatica di quei contenuti.
Dati giudiziari
Il GDPR (art. 10) considera “dati relativi a reati e condanne” dati giudiziari. Il trattamento è fortemente regolato.
Ciclicità e stanzialità
Ciclicità: ricorrenze temporali prevedibili.
Stanzialità: concentrazione spaziale persistente.
80/20 (qualità > quantità)
Un 20% di dati puri, verificati e rappresentativi può descrivere l’80% del fenomeno reale.
4) I limiti strutturali, con esempi concreti
4.1 Bias di copertura: “la mappa della notiziabilità”
Esempio: Una rapina scenografica in centro fa notizia su 5 testate. Dieci borseggi in metro, no. Se costruisci la mappa con ciò che finisce sui giornali, vedrai “rapine in centro”, non “borseggi in metro”. Dove concentri l'attenzione (vigilanza)?
4.2 Deduplicazione e incoerenza temporale: “tre articoli, un evento”
Esempio: Rapina in farmacia. Tre articoli con titoli/luoghi diversi. Senza event resolution, il sistema conta tre reati. Numeri gonfiati = attenzione (vigilanza) mal disposta.
4.3 Geocoding e incertezza spaziale: “zona stazione” non è un indirizzo
Esempio: Il sistema piazza “zona stazione” in un punto medio. L’hotspot finisce nel quartiere adiacente: attenzione (vigilanza) dove il rischio è minore, scopertura dove è maggiore.
4.4 Tassonomie arbitrarie: “aggressione” non è una categoria legale
Esempio: Sotto “aggressione” finiscono rissa, lesioni, minacce, rapina. Sommare mele, pere e arance produce “frutta”, ma non aiuta a pianificare interventi mirati.
4.5 Autoreferenzialità: “mi do ragione da solo”
Esempio: Prevedi “rischio venerdì sera in centro”. Il giorno dopo tre articoli parlano di rissa in centro. “Avevamo ragione!” Valutazione fatta sulle stesse fonti: circuito chiuso, niente prova indipendente.
4.6 Latenza: “quasi reale” non è reale
Esempio: Furti in appartamento di notte. L’alert arriva la mattina dopo: descrizione del passato, non prevenzione.
5) La predizione sensata: 80/20, su ciclicità e stanzialità
5.1 Perché non serve tutto il dato
Per furti, borseggi, rapine, truffe contano le strutture ricorrenti: tempi e luoghi si ripetono. Se selezioni e verifichi un campione rappresentativo (il “20% puro”), puoi spiegare l’“80%” del fenomeno. È una strategia di misura, non uno slogan.
5.2 Ciclicità: esempi chiari
- Borseggi in aumento 7:00–9:00 e 17:00–19:30 (pendolarismo).
- Furti su auto che crescono nei weekend vicino a movida/stadi.
- Truffe agli anziani vicino a ATM/uffici postali in orari di rientro.
5.3 Stanzialità: dove si radica il fenomeno
- Hotspot stabili in nodi d’interscambio (stazioni, funicolari, linee bus ad alto carico).
- Micro-aree per rapine in strade di collegamento tra movida e parcheggi.
5.4 Mini–protocollo operativo strutturato (6 mosse)
- Seleziona 4 categorie: furto, borseggio, rapina, truffa.
- Verifica ogni evento (dedupe + geocoding con buffer + codifica legale coerente).
- Segmenta per fasce orarie/settimanali e micro-aree (100–300 m).
- Modella con baseline stagionali + afflussi/eventi.
- Valida out-of-time e out-of-area; reporta precision@k e falsi allarmi/turno.
- Comunica l’incertezza (niente mappe “assolute”).
6) Casi e lezioni internazionali
USA: sistemi dismessi in diversi dipartimenti dopo critiche su bias e scarsa efficacia. Effetto “profezia autoavverante”: più pattuglie ? più rilevazioni ? algoritmo “convinto” ? ancora più pattuglie, senza riduzione del crimine.
Lezioni: validazione indipendente, metriche pubbliche, controllo dei bias, trasparenza metodologica.
7) Normativa: cosa è lecito e cosa no
GDPR, art. 10: i dati relativi a reati/condanne sono dati giudiziari. Il trattamento da parte di privati è ammesso solo se previsto da legge nazionale con garanzie adeguate o sotto controllo dell’autorità pubblica.
Codice Privacy (d.lgs. 196/2003), art. 2-octies: ribadisce presupposti e cautele per i dati giudiziari.
DPIA: per scraping massivo e indicizzazione, la Data Protection Impact Assessment è, di fatto, imprescindibile.
Esempi pratici
“È su un giornale, posso mappare”
No. Pubblico ? liberamente riutilizzabile. Servono base giuridica, minimizzazione, finalità determinate, informative, sicurezza, gestione dei diritti degli interessati.
Mappare “negozi a rischio”
Alto rischio di stigmatizzazione e danni economici. Senza verifica robusta, DPIA e limiti d’uso, possibili responsabilità civili.
8) Competenze & governance scientifica: criminologi e analisti al centro
Gli strumenti funzionano solo se guidati da criminologi e analisti del crimine. L’ingegneria è necessaria, ma non sufficiente: senza dominio criminologico si sbagliano le domande, le unità di analisi, le tassonomie, i cut-off, e si “ottimizza” un sistema che misura cose sbagliate.
8.1 Perché i modelli sbagliano senza dominio
- Etichette generiche: un ingegnere raggruppa “aggressione” in “violenza”. Il criminologo separa rissa/lesioni/rapina perché hanno pattern e rimedi operativi diversi.
- Geocoding ingenuo: l’ingegnere piazza “zona stazione” al centro geometrico. L’analista usa anchor points, flussi pendolari e poligoni funzionali (non amministrativi) per delimitare l’area di rischio.
- Picchi apparenti: l’ingegnere scambia un aumento di segnalazioni per aumento del crimine. Il criminologo riconosce l’effetto “evento” (partita, concerto, nave da crociera) o “operazione di polizia” (più controlli ? più rilevazioni).
8.2 Cosa fa (davvero) il criminologo/analista
- Definisce lo scopo (prevenzione mirata) e il perimetro (quattro reati predatori).
- Stabilisce unità di analisi (micro-aree 100–300 m) e granularità temporale (fasce orarie operative).
- Scrive il manuale di codifica (mapping lessico?categorie legali, regole di deduplica, soglie minime).
- Impone controlli qualità (audit sample, tassi di errore ammessi, revisione periodica).
- Seleziona metriche che hanno senso operativo: precision@k per pattuglie, falsi allarmi/turno, NNP (number needed to patrol).
- Fissa i limiti d’uso (no decisioni su persone/negozi; solo pianificazione di area e tempo).
8.3 Un framework semplice: SARA + RACI
SARA (Scanning–Analysis–Response–Assessment)
- Scanning: selezione problemi e hotspot (analista).
- Analysis: cause, pattern, ciclicità/stanzialità (analista + dati).
- Response: interventi selettivi/sequenziali (operativo).
- Assessment: misure ex-post (metriche, falsi allarmi, NNP).
RACI (chi fa cosa)
- Responsible: Criminologo/Analista (modello, tassonomie, QA); Ingegnere (pipeline).
- Accountable: Responsabile progetto + DPO per compliance.
- Consulted: Operazioni, Legale, Comunicazione.
- Informed: Stakeholder istituzionali e partner.
8.4 Metriche e soglie decise dal dominio
Esempio operativo: “Il modello è ammissibile solo se precision@k = 0,60 e falsi allarmi = 2 per turno su micro-area”. Soglie scelte dall’analista, non dall’ingegnere, perché dipendono dal costo delle risorse sul territorio e dall’accettabilità del rischio.
8.5 Formazione incrociata
- Ingegneri: basi di criminologia ambientale (Routine Activity Theory, Crime Pattern Theory, CPTED).
- Analisti: alfabetizzazione dati (campionamento, bias, metriche, incertezza).
8.6 Checklist “prima di andare in produzione”
- Manuale di codifica approvato (con esempi positivi/negativi).
- Pipeline con dedupe, geocoding con incertezza, tassonomie validate.
- Audit sample revisionato da analista indipendente.
- Metriche pubblicate (precision, falsi allarmi/turno, precision@k, baseline).
- DPIA firmata; basi giuridiche e policy d’uso esplicite; log di audit.
9) Implicazioni operative: cosa fare/evitare
Fare
- Limitarsi ai reati predatori con pattern ricorrenti.
- Costruire un campione “puro” (20%): dedupe, geocoding con incertezza, codifica legale.
- Usare baseline trasparenti e metriche dure (precision, falsi allarmi/turno, precision@k).
- Esporre incertezza sull’output.
- Dotarsi di DPIA, policy d’uso, audit trail, retention chiara.
Evitare
- Raccolte massive non verificate (“più è meglio”).
- Validazioni sulle stesse fonti d’ingresso.
- Etichettare luoghi/persone senza basi legali e verifica.
- Mappe “belle” ma false (senza incertezza e metriche).
10) Domande frequenti (FAQ)
“Aggiungo mille fonti: miglioro?”
Non per forza. Senza controllo qualità aumenti rumore, duplicati e errori. La performance dipende da qualità e struttura del dato, non dal volume in sé.
“Solo dati aperti: posso predire?”
Sì, se sono selezionati e verificati e se lavori su reati con pattern ricorrenti. L’80/20 è una scelta metodologica, non un compromesso.
“Il ‘tempo reale’ è indispensabile?”
Per la prevenzione, sì. Con 12–24 ore di ritardo descrivi il passato, non previeni.
11) Conclusioni
Lo scraping indiscriminato produce più cartografia del rumore che strumenti di prevenzione. La via solida: dati pochi ma buoni, focalizzati su furti, borseggi, rapine, truffe, lavorati con disciplina (dedupe, geocoding con incertezza, tassonomie corrette), modellati su ciclicità e stanzialità, validati con metriche trasparenti e governati nel rispetto del GDPR. Tutto questo richiede criminologi e analisti del crimine al timone, con gli ingegneri al loro fianco: strumenti tecnici costruiti su dettami scientifici, non il contrario.
12) Riferimenti essenziali
- AI Now Institute. (2019). Litigating Algorithms 2019 Report: New Challenges to Government Use of Algorithmic Decision Systems. NYU.
- Chermak, S., & Weiss, A. (2005). Maintaining legitimacy using external communication strategies: An analysis of police–media relations. Journal of Criminal Justice, 33(5), 501–512.
- Cohen, L. E., & Felson, M. (1979). Social change and crime rate trends: A routine activity approach. American Sociological Review, 44(4), 588–608.
- Brantingham, P. L., & Brantingham, P. J. (1993). Nodes, paths and edges: Considerations on the complexity of crime and the physical environment. Journal of Environmental Psychology, 13(1).
- Clarke, R. V., & Eck, J. E. (2005). Crime Analysis for Problem-Solvers in 60 Small Steps. U.S. DOJ (modello SARA).
- European Data Protection Board (EDPB). (2020). Guidelines 05/2020 (consenso, minimizzazione, accountability; richiami pertinenti allo scraping).
- Ferguson, A. G. (2017). The Rise of Big Data Policing. NYU Press.
- Greer, C., & McLaughlin, E. (2012). Media and Crime. SAGE.
- Lum, K., & Isaac, W. (2016). To predict and serve? Significance, 13(5), 14–19.
- Regolamento (UE) 2016/679, art. 10 (GDPR – dati giudiziari).
- Codice in materia di protezione dei dati personali (d.lgs. 196/2003), art. 2-octies.
- Garante per la protezione dei dati personali: Provv. n. 161/2019; Provv. n. 224/2022 (scraping, DPIA, minimizzazione, proporzionalità).
Nota: i riferimenti sostengono il quadro tecnico-giuridico e metodologico. Il testo non si riferisce a marchi/prodotti specifici.
13) Glossario minimo
- OSINT
- Open Source Intelligence: raccolta di informazioni da fonti aperte (pubblicamente accessibili).
- Crawling
- Visita automatica di pagine web per trovarle e scaricarle.
- Scraping
- Estrazione automatizzata di contenuti (testi, tabelle, metadati) dalle pagine web scaricate.
- API
- Interfacce ufficiali per ottenere dati già strutturati, senza parsing HTML.
- DPIA
- Data Protection Impact Assessment: valutazione d’impatto per trattamenti ad alto rischio sulla protezione dei dati.
- Precision / Recall
- Metriche per misurare accuratezza (precisione) e copertura (richiamo) di un modello.
- Baseline
- Modelli di riferimento semplici (es. stagionalità, densità) per misurare il valore aggiunto del modello predittivo.
- NNP
- Number Needed to Patrol: quante unità/turni servono per evitare un evento, dato un certo livello di rischio e precisione.