Torna al blog

Come raccogliere dati da Reddit nel 2026: limiti API, file .json privati e ruolo dei proxy

Nel maggio 2026, Reddit ha chiuso il .json non autenticato, e robots.txt restituisce Disallow: / per tutti. Analizziamo i limiti reali dell'API ufficiale dei dati (100 QPM, $0.24 per 1000 chiamate), uno schema passo-passo di un pipeline sostenibile, un listing-cap di 1000 elementi e quali compiti i proxy risolvono realmente in questo schema e quali no.

📅28 luglio 2026
Come raccogliere dati da Reddit nel 2026: limiti API, file .json privati e ruolo dei proxy

Nel maggio 2026, Reddit ha chiuso l'accesso non autenticato agli endpoint .json — quel trucco di "aggiungere .json a qualsiasi URL", su cui per anni si sono basati decine di script, dashboard e progetti personali. Verifica del 28 luglio 2026: una richiesta a https://www.reddit.com/r/webscraping/top.json?t=week con un User-Agent di browser normale restituisce 403 Forbidden. Contemporaneamente, il robots.txt di Reddit contiene solo due righe significative: User-agent: * e Disallow: / — con riferimento alla Public Content Policy.

Questo cambia non "come aggirare", ma come ora costruire un pipeline di raccolta dati da Reddit. Di seguito — uno schema operativo per il 2026: cosa è realmente accessibile, quali limiti ci sono, dove servono proxy e dove non serviranno a nulla.

Cosa è andato storto: cronologia breve

  • Giugno 2023 — Reddit ha introdotto una tariffa a pagamento di $0.24 per 1000 chiamate API per applicazioni ad alta richiesta. Conseguenza: chiusura di Apollo (lo sviluppatore valutava il costo di accesso intorno ai $20 milioni all'anno), abbandono della maggior parte dei client di terze parti e fermo di Pushshift — l'archivio pubblico di post e commenti, su cui si basava metà delle ricerche accademiche.
  • Maggio 2026 — deprecazione dell'.json non autenticato. Gli strumenti che "sfruttavano semplicemente l'URL" hanno smesso di funzionare; il traffico è passato attraverso la protezione Cloudflare con verifica della sessione.
  • Ottobre 2025 — ad oggi — causa di Reddit contro Perplexity AI, Oxylabs UAB, AWMProxy e SerpApi (Distretto Meridionale di New York, giudice Engelmaier). Reddit accusa i convenuti di estrazione industriale dei propri contenuti tramite i risultati di Google e rivendita dei dati, citando le disposizioni anti-aggiramento del DMCA. È stata presentata la prima causa modificata; a marzo 2026 il caso è in fase di motion to dismiss. I convenuti negano le violazioni: Perplexity definisce questo tentativo di chiudere i dati pubblici, SerpApi e Oxylabs dichiarano di avere accesso al web pubblico nel rispetto della legge.

Conclusione pratica dal terzo punto: la raccolta di dati da Reddit al di fuori dell'API ufficiale è una zona di rischio legale, non tecnico, e il costo dell'errore per un progetto commerciale è misurato non in ban, ma in cause legali. Maggiori dettagli su come i tribunali nel 2026 interpretano l'estrazione di dati dai risultati sono stati trattati nel materiale riguardante la sentenza sul caso Google e SerpApi.

API ufficiale dei dati: limiti reali 2026

Questo è l'unico modo che non crea pretese legali. I numeri che devi conoscere prima di progettare:

  • 100 richieste al minuto per client OAuth. La finestra è mediata su circa 10 minuti, quindi brevi picchi sono consentiti.
  • 10 richieste al minuto senza OAuth — non basteranno per nulla, tranne che per il debug.
  • Il limite è calcolato sulla chiave dell'applicazione, non sull'utente finale. Cinque flussi su un token non forniscono una capacità quintuplicata — semplicemente consumano un budget cinque volte più velocemente.
  • Il piano gratuito copre progetti personali, bot, strumenti di moderazione e ricerche accademiche. Non c'è un contatore monetario, c'è solo un tetto sulla frequenza.
  • Utilizzo commerciale richiede un contratto e approvazione manuale; tariffa — $0.24 per 1000 chiamate. Secondo le stime delle piattaforme di settore, la soglia di ingresso in un contratto commerciale inizia intorno ai $12.000 all'anno.
  • Il training dei modelli ML sui dati API è esplicitamente vietato dai termini dell'API dei dati. Le licenze per l'addestramento sono contratti privati separati (l'accordo di Reddit con Google è stato stimato dalla stampa intorno ai $60 milioni all'anno).

Intestazioni da analizzare sempre

Reddit restituisce tre intestazioni per ogni risposta: X-Ratelimit-Used, X-Ratelimit-Remaining e X-Ratelimit-Reset. Questa è l'unica fonte affidabile della verità sul tuo budget — non è una costante nel codice e non è una vecchia wiki con il numero "60 richieste al minuto" (che è obsoleta dal 2023).

Requisiti per User-Agent

Reddit si aspetta una stringa descrittiva unica nel formato platform:app_id:version (by /u/username). User-Agent universali e vuoti vengono severamente limitati in frequenza — questo è il primo controllo da fare se i limiti si esauriscono prima del previsto.

Passo dopo passo: come costruire un pipeline che non crolla

  1. Registrati come script-app nelle impostazioni di Reddit e ottieni client_id/client_secret. Per un carico di sola lettura, questo è il tipo di applicazione più semplice.
  2. Imposta un User-Agent corretto secondo il formato sopra. Non copiare la stringa da un tutorial di qualcun altro — app_id e nickname devono essere i tuoi.
  3. Leggi X-Ratelimit-Remaining in ogni risposta, non solo in caso di errore. Quando il resto scende a circa 20 richieste, passa a un ritmo uniforme: ritardo per chiamata = secondi fino al reset della finestra ÷ richieste rimanenti. In questo modo distribuisci la quota sulla finestra invece di sbattere contro un muro.
  4. Gestisci correttamente il 429. Prendi la prima pausa dall'intestazione Retry-After. Poi — backoff esponenziale con jitter: wait = 2^attempt + random(). Il jitter è obbligatorio: senza di esso, i client paralleli ripetono la richiesta in modo sincrono e causano un secondo fallimento a cascata.
  5. Cache le letture con TTL. Una richiesta ripetuta dello stesso elenco è la causa più comune di esaurimento della quota nei progetti di monitoraggio.
  6. Scala ruotando i token, non i flussi. Ogni token OAuth porta un contatore indipendente; più applicazioni su account diversi con distribuzione round-robin (in Python — itertools.cycle) aumentano la capacità in modo lineare. Importante: per carichi commerciali questo non sostituisce un contratto con Reddit — è un modo per rimanere entro limiti equi, non per aggirarli.
  7. Prevedi l'aggiramento del limite di elenco. Reddit restituisce un massimo di circa 1000 elementi per elenco (100 per pagina, cursore after). Contenuti più vecchi non sono disponibili tramite gli endpoint standard. La soluzione standard è non "superare" il limite, ma suddividere il campione nel tempo e fare più richieste ristrette invece di una sola ampia.
  8. Per dati storici cerca un indice, non un'API. Dopo la chiusura di Pushshift, la sua nicchia è occupata da indici esterni come PullPush (gratuito, ma senza SLA) e API di ricerca commerciali con il proprio indice e altri limiti. Per il lavoro accademico, Reddit ha un programma separato chiamato Reddit for Researchers.

Insidie che si scoprono tardi

PRAW addormenta il flusso, ma non salva da tutto. Il limitatore integrato di PRAW legge le intestazioni e imposta pause da solo — funziona ottimamente per uno script a thread singolo. Lo stato attuale è visibile tramite reddit.auth.limits. Questo si rompe in due casi: quando si utilizza la multithreading con credenziali condivise (le istanze non vedono il consumo l'una dell'altra) e nel codice async, dove il time.sleep bloccante blocca l'event loop.

Gli agenti AI consumano quota senza farsi notare. Un singolo passo di ragionamento dell'agente può facilmente trasformarsi in 10–15 chiamate agli strumenti. Dieci sessioni parallele significano 100–150 richieste simultanee, ovvero l'intero budget minuto in pochi secondi. Se stai costruendo un agente sopra Reddit, il limitatore è necessario a livello di pool, non per singola chiamata.

Polling senza backoff. Controllare gli aggiornamenti "ogni N secondi" senza una pausa esponenziale è la seconda causa più frequente di 429 dopo il token generale.

Dove sono realmente necessari i proxy e dove no

Parliamo chiaro: i proxy non aumentano il tuo limite dell'API ufficiale. La quota è legata alla chiave dell'applicazione, non all'IP in uscita, e tentare di "moltiplicarla" cambiando indirizzo non funziona e contraddice i termini. Le attività che i proxy risolvono realmente nel pipeline di Reddit sono diverse:

  • Accesso geo e connettività. Reddit non è accessibile o è parzialmente limitato in alcuni paesi, e le reti aziendali lo bloccano come social network. Un nodo di uscita stabile nella regione necessaria è una questione di disponibilità dell'infrastruttura, non di aggiramento dei limiti. Per compiti server con IP fisso, di solito è sufficiente un proxy di data center.
  • Risultati regionali. Parte dei contenuti e delle raccomandazioni di Reddit viene restituita tenendo conto della geografia della richiesta; se stai analizzando cosa vede il pubblico di un determinato paese, hai bisogno di un'uscita proprio da lì.
  • Separazione dell'infrastruttura. Quando più servizi indipendenti (raccolta, monitoraggio delle menzioni, analisi) vivono su un unico server, un unico IP diventa un punto di guasto comune per tutte le integrazioni contemporaneamente.
  • Lavorare con i propri account. Per moderazione, gestione delle comunità e attività SMM legittime da più profili, il legame "account ↔ IP fisso" è una base igienica. Qui sono appropriati proxy residenziali con sessione sticky.

Ma ecco cosa i proxy non faranno: non legalizzeranno la raccolta commerciale al di fuori del contratto, non rimuoveranno il limite di elenco di 1000 elementi e non annulleranno Disallow: / nel robots.txt. L'approccio generale per lavorare con i limiti delle piattaforme è trattato nell'analisi su rate limiting nell'API e il ruolo dei proxy.

Conclusione

Reddit nel 2026 ha definitivamente smesso di essere "un dataset aperto che puoi prendere con .json". Lo schema operativo appare così: accesso OAuth ufficiale + limitatore onesto sulle intestazioni + rotazione dei token nel rispetto delle regole + indice esterno per la storia. I proxy in questo schema rispondono alla disponibilità e alla geografia, non all'aggiramento delle quote — e questa è l'unica funzione in cui forniscono un risultato prevedibile.

Se il tuo progetto è commerciale, pianifica il budget per il contratto con Reddit in anticipo: la storia legale con Perplexity, Oxylabs e SerpApi mostra che la piattaforma è pronta a spendere per proteggere i propri dati molto più di quanto costi l'accesso legale.