Etica nello scraping del web

Raschiamento, Mar-06-20245 minuti di lettura

Il Web scraping non è un concetto nuovo, poiché l'intero Internet si basa su di esso. Ad esempio, quando si condivide il link di un video di Youtube su Facebook, i suoi dati vengono scrapati in modo che le persone possano vedere la miniatura del video nel post. Esistono quindi infiniti modi per utilizzare il data scraping a vantaggio di tutti. Ma c'è

Indice dei contenuti

Il Web scraping non è un concetto nuovo, poiché l'intero Internet si basa su di esso. Ad esempio, quando si condivide il link di un video di Youtube su Facebook, i suoi dati vengono scrapati in modo che le persone possano vedere la miniatura del video nel post. Esistono quindi infiniti modi per utilizzare il data scraping a vantaggio di tutti. Tuttavia, lo scraping di dati dal web comporta alcuni aspetti etici.

Supponiamo di richiedere un piano di assicurazione sanitaria e di fornire volentieri i nostri dati personali al fornitore in cambio del servizio offerto. Ma cosa succede se qualche sconosciuto fa una magia di web scraping con i vostri dati e li usa per scopi personali. Le cose possono iniziare a diventare inappropriate, giusto? Ecco la necessità di praticare un web scraping etico. 

In questo articolo discuteremo il codice di condotta per il web scraping e le considerazioni legali ed etiche.

Codice di condotta per il web scraping

Per praticare il web scraping in modo legale, è necessario attenersi alle seguenti semplici regole.

Non distruggete Internet - Dovete sapere che non tutti i siti web possono sopportare migliaia di richieste al secondo. Alcuni siti web lo consentono, ma altri potrebbero bloccarvi se inviate più richieste utilizzando lo stesso indirizzo IP. Ad esempio, se scrivete uno scraper che segue i collegamenti ipertestuali, dovreste prima testarlo su un set di dati più piccolo e assicurarvi che faccia ciò che deve fare. Inoltre, è necessario regolare le impostazioni dello scraper per consentire un ritardo tra le richieste. 

Visualizzazione del file robots.txt - I siti web utilizzano i file robots.txt per comunicare ai bot se il sito può essere carrellato o meno. Quando si estraggono dati dal web, è necessario comprendere e rispettare il file robots.txt per evitare conseguenze legali. 

Condividere ciò che si può - Se si ottiene l'autorizzazione per lo scraping dei dati di pubblico dominio e si effettua lo scraping, è possibile metterlo a disposizione (ad esempio, su datahub.io) affinché altre persone possano riutilizzarlo. Se scrivete un web scraper, potete condividerne il codice (ad esempio, su Github) in modo che altri possano trarne vantaggio. 

Non condividete i contenuti scaricati illegalmente - A volte è lecito fare lo scraping dei dati per scopi personali, anche se le informazioni sono protette da copyright. Tuttavia, è illegale condividere dati di cui non si ha il diritto.

Potete chiedere gentilmente - Se avete bisogno di dati da una particolare organizzazione per il vostro progetto, potete chiedere direttamente a loro se possono fornirvi i dati che desiderate. In alternativa, potete anche utilizzare le informazioni principali dell'organizzazione sul suo sito web e risparmiarvi la fatica di creare un web scraper. 

Considerazioni etiche sullo scraping del web

Durante lo scraping di dati dal web è necessario tenere presente i seguenti principi etici.

Non rubate i dati

È necessario sapere che il web scraping può essere illegale in alcune circostanze. Se i termini e le condizioni del sito web di cui vogliamo effettuare lo scraping vietano agli utenti di copiare e scaricare il contenuto, allora non dobbiamo effettuare lo scraping di quei dati e rispettare i termini di quel sito web.

È possibile effettuare lo scraping dei dati che non si trovano dietro un sistema di autenticazione protetto da password (dati pubblicamente disponibili), tenendo presente che non si deve danneggiare il sito web. Tuttavia, può essere un potenziale problema se si condividono ulteriormente i dati raschiati. Ad esempio, se scaricate contenuti da un sito web e li pubblicate su un altro sito web, il vostro scraping sarà considerato illegale e costituirà una violazione del copyright. 

Non rompere la rete

Quando si scrive un web scraper, si interroga ripetutamente un sito web e si accede potenzialmente a un gran numero di pagine. Per ogni pagina, viene inviata una richiesta al server Web che ospita il sito. Il server elabora la richiesta e invia una risposta al computer che esegue il codice. Le richieste inviate consumano le risorse del server. Pertanto, se inviamo troppe richieste in un breve lasso di tempo, possiamo impedire agli altri utenti regolari di accedere al sito in quel periodo.

Gli hacker spesso effettuano attacchi Denial of Service (DoS) per bloccare la rete o la macchina, rendendola inaccessibile agli utenti previsti. Lo fanno inviando al server informazioni che innescano un crash o inondando di traffico il sito web bersaglio. 

La maggior parte dei server Web moderni include misure per impedire l'uso illegittimo delle proprie risorse, poiché gli attacchi DoS sono comuni su Internet. Sono attenti al numero elevato di richieste provenienti da un singolo indirizzo IP. Possono bloccare tale indirizzo se invia più richieste in un breve intervallo di tempo.

Chiedere e condividere

È opportuno chiedere ai curatori o ai proprietari dei dati che si intende scrapare, a seconda della portata del progetto. Potete chiedere loro se hanno a disposizione dati in un formato strutturato che possa soddisfare le esigenze del vostro progetto. Se volete utilizzare i loro dati per scopi di ricerca in un modo che potrebbe interessarli, potete risparmiarvi la fatica di scrivere un web scraper. 

Potete anche evitare ad altri la fatica di scrivere un web scraper. Ad esempio, se si pubblicano i dati o la documentazione come parte del progetto di ricerca, qualcuno potrebbe voler ottenere i dati per utilizzarli. Se lo desiderate, potete fornire ad altri un modo per scaricare i vostri dati grezzi in un formato strutturato, risparmiando così la fatica di scrivere un web scraper.

Meglio essere sicuri che dispiaciuti

La legislazione sulla privacy dei dati e sul copyright varia da Paese a Paese. È necessario verificare le leggi vigenti nel proprio contesto. Ad esempio, in paesi come l'Australia, è illegale raccogliere informazioni personali come numeri di telefono, indirizzi e-mail e nomi, anche se sono disponibili pubblicamente.

Per effettuare lo scraping di dati per uso personale è necessario attenersi al codice di condotta per il web scraping. Tuttavia, se volete raccogliere grandi quantità di dati per scopi commerciali o di ricerca, probabilmente dovrete chiedere un parere legale.

Proxy per lo scraping etico del web

È noto che i proxy hanno un'ampia gamma di applicazioni. Il loro scopo principale è quello di nascondere l'indirizzo IP e la posizione dell'utente. I proxy consentono inoltre agli utenti di accedere a contenuti geo-limitati durante la navigazione in Internet. In questo modo, gli utenti possono accedere alle pagine nascoste poiché i proxy aggirano i contenuti e le geo-restrizioni.

È possibile utilizzare i proxy per massimizzare il rendimento dello scraper, in quanto riducono le percentuali di blocco. Senza di essi, è possibile raschiare una quantità minima di dati dal web. Questo perché i proxy superano i tassi di crawl consentendo agli spider di estrarre più dati. La velocità di crawl indica il numero di richieste che è possibile inviare in un determinato lasso di tempo. Questo tasso varia da sito a sito. 

Scelta dei proxy

È possibile scegliere i proxy in base ai requisiti del progetto. È possibile utilizzare un proxy privato o un proxy condiviso.

  • I proxy privati sono i migliori se il vostro progetto necessita di prestazioni elevate e di una connessione ottimizzata.
  • I proxy condivisi funzionano bene quando si realizza un progetto su piccola scala con un budget limitato.
  • I proxy gratuiti sono sconsigliati quando si estraggono dati dal Web. Questo perché sono aperti al pubblico e spesso vengono utilizzati per attività illegali.

È possibile identificare le fonti IP oltre a scegliere i proxy per il proprio progetto. Esistono tre categorie di server proxy. 

Proxy Datacenter - Sono i proxy più economici e pratici per lo scraping del web. Questi IP sono creati su server indipendenti e vengono utilizzati in modo efficiente per realizzare progetti di scraping su larga scala.

Proxy residenziali - Possono essere difficili da ottenere perché sono affiliati a terzi. 

Proxy mobili - Sono i più costosi e sono ottimi da usare se si devono raccogliere dati visibili solo sui dispositivi mobili.

Conclusioni sull'etica del web scraping

Finora abbiamo detto che è possibile estrarre dati da Internet tenendo conto delle considerazioni legali ed etiche. Ad esempio, non si devono rubare dati dal web. Non si possono condividere dati di cui non si ha il diritto. Se avete bisogno dei dati di un'organizzazione per il vostro progetto, potete chiedere gentilmente se possono condividere i loro dati grezzi in un formato strutturato. In alternativa, potete scrivere il vostro web scraper per estrarre i dati dal sito web, se lo consentono. Inoltre, abbiamo detto che potete scegliere diversi proxy a seconda delle esigenze del vostro progetto. È possibile utilizzare gli IP dei datacenter o quelli residenziali, poiché sono ampiamente utilizzati per lo scraping del web.