Come estrarre dati pubblici da Instagram per ricerche di marketing

Instagram ha eliminato l'accesso pubblico all'API nel 2020, ma gli endpoint web pubblici continuano a restituire profili, post e dati sugli hashtag in formato JSON. Ecco cosa è accessibile, perché gli IP mobili sono importanti e dove si trova il limite.

Instagram ha chiuso l'accesso pubblico alla sua API ufficiale nel 2020, motivo per cui ogni guida per estrarre dati da Instagram ora si basa sugli endpoint web pubblici. La buona notizia per le ricerche di marketing: quegli endpoint continuano a restituire profili, post, reel e volumi di hashtag come JSON pulito, senza necessità di login. Il problema è che Instagram è una delle piattaforme più aggressive nel segnalare il traffico automatizzato, quindi l'IP che usi e il ritmo che mantieni decidono se l'endpoint rimane aperto. Questa guida copre cosa è accessibile, il codice per raggiungerlo e le linee di ToS e GDPR che non dovresti oltrepassare.

Quali dati pubblici di Instagram puoi effettivamente raccogliere

Senza un account puoi raggiungere una quantità sorprendente di dati, tutti utili per ricerche di mercato e influencer:

Cosa non puoi ottenere senza una sessione autenticata: liste complete di follower, la lista degli account che hanno messo like a un post, account privati e storie. Quegli endpoint richiedono un cookie di sessione, ed è esattamente lì che si concentrano i ban degli account e le violazioni di ToS. Per la ricerca, rimani sulla superficie pubblica.

Confronto tra dati pubblici di Instagram come profili, post e volume di hashtag contro dati protetti da login come liste di follower e likers che comportano il rischio di ban dell'account
I dati web pubblici sono la superficie sicura; qualsiasi cosa dietro un cookie di sessione comporta il rischio di ban dell'account e di violazione di ToS.

L'endpoint del profilo pubblico, con codice

L'app web di Instagram recupera i dati del profilo da un endpoint JSON che chiunque può chiamare, a condizione di inviare l'intestazione id dell'app web pubblica. Instradalo attraverso un proxy e avrai i dati del profilo in poche righe:

import requests

PROXY = "http://USER:PASS@gate.quantumproxies.io:8000"  # mobile pool
proxies = {"http": PROXY, "https": PROXY}

HEADERS = {
    "x-ig-app-id": "936619743392459",  # public web app id
    "User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_2 like Mac OS X) "
                  "AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148",
}

def profile(username):
    url = "https://www.instagram.com/api/v1/users/web_profile_info/"
    r = requests.get(url, params={"username": username},
                     headers=HEADERS, proxies=proxies, timeout=20)
    r.raise_for_status()
    return r.json()["data"]["user"]

u = profile("natgeo")
print(u["full_name"], u["edge_followed_by"]["count"])

Lo stesso payload trasporta i post recenti sotto edge_owner_to_timeline_media, quindi una chiamata ti dà il profilo e il suo ultimo coinvolgimento insieme:

for edge in u["edge_owner_to_timeline_media"]["edges"]:
    node = edge["node"]
    print(node["shortcode"],
          node["edge_media_preview_like"]["count"],   # likes
          node["edge_media_to_comment"]["count"])       # comments

Perché i proxy mobili vincono su Instagram

Il fallimento più comune di Instagram è un blocco di limite di velocità: l'endpoint inizia a restituire errori e vieta temporaneamente l'IP che lo ha colpito. Aspettare e allungare i timeout aiuta un po', ma la soluzione duratura è il tipo di IP. I proxy mobili sono l'opzione più forte qui a causa del CGNAT - un singolo IP mobile è condiviso da migliaia di veri abbonati, quindi Instagram non può bloccarlo senza colpire utenti genuini. Questo rende le uscite mobili le più difficili da bannare e il più vicino a come la maggior parte delle persone naviga effettivamente nell'app. La nostra spiegazione su perché il CGNAT rende gli IP mobili affidabili copre il meccanismo, e proxy mobili vs VPN spiega perché una VPN non può farlo.

Abbina un pool di proxy mobili con un ritmo umano - ritardi casuali, concorrenza limitata e una pausa quando il tasso di blocco aumenta - e gli endpoint pubblici rimangono aperti durante lunghe raccolte.

I proxy residenziali sono una ragionevole alternativa quando un pool mobile non è disponibile - la nostra rete residenziale copre oltre 200 paesi per una raccolta geo-accurata - ma su Instagram specificamente, le uscite mobili durano più a lungo. Qualunque sia il tipo di IP, trattare una risposta di limite di velocità come un segnale per rallentare, non per riprovare più forte: ritirati, ruota e allunga l'intervallo tra le chiamate. Uno scraper che rispetta il limite raccoglie molto di più in un giorno rispetto a uno che martella attraverso i blocchi e brucia il suo pool in un'ora.

Una pipeline resiliente di Instagram pubblico che instrada una lista di nomi utente e hashtag attraverso un proxy mobile all'endpoint JSON web_profile_info pubblico e in righe strutturate
Gli IP mobili più il ritmo umano mantengono l'endpoint pubblico aperto durante lunghe esecuzioni - il CGNAT rende quelle uscite difficili da bannare.

Ottieni proxy mobili costruiti per piattaforme social

Hashtag e scoperta

Per la scoperta di tendenze e influencer, i dati sugli hashtag battono lo scraping dei singoli profili. Le pagine degli hashtag espongono il volume dei post e i cluster di tag correlati, che ti permettono di mappare quanto è saturo un argomento e trovare tag adiacenti più tranquilli da mirare. Combina questo con i tassi di coinvolgimento per profilo - like e commenti sul conteggio dei follower - e hai una lista difendibile di creatori senza mai toccare dati protetti. Se la tua ricerca copre piattaforme, la stessa disciplina si applica ai dati pubblici di TikTok, e c'è sovrapposizione con l'automazione sociale su Instagram, TikTok e X.

Cosa conservare e cosa eliminare

Per la ricerca, conserva i segnali aggregati ed elimina il resto. I conteggi dei follower e dei seguiti, la frequenza dei post, i like e i commenti medi, e l'uso degli hashtag ti dicono tutto sulla portata e l'engagement senza conservare una pila di dettagli personali. Gli URL dei media scadono e le didascalie complete gonfiano il tuo storage, quindi conserva identificatori stabili come il shortcode più le metriche, e recupera i contenuti su richiesta. Minimizzare ciò che conservi è sia una buona ingegneria che il lato più sicuro della linea GDPR - una tabella di tassi di coinvolgimento è molto meno sensibile di un magazzino di account nominati e i loro post.

Le linee di ToS e GDPR

Due confini contano. Primo, i termini di Instagram limitano la raccolta automatizzata, e usare una sessione con login per estrarre dati protetti rischia l'account, non solo l'IP - mantieniti sugli endpoint pubblici e non autenticati per la ricerca. Secondo, i nomi dei follower, gli autori dei commenti e i dettagli dei profili sono dati personali. Sotto il GDPR e regimi simili hai bisogno di una base legale per raccoglierli e conservarli, dovresti minimizzare ciò che conservi e dovresti evitare di costruire profili di individui identificabili senza una chiara ragione. Le metriche aggregate (conteggi dei follower, tassi di coinvolgimento, volumi degli hashtag) sono molto più sicure delle liste di persone nominate. La nostra guida su GDPR e scraping di dati personali copre i dettagli - e questo è un consiglio pratico, non legale.

Domande frequenti

Puoi estrarre dati da Instagram senza un account?

Sì, per i dati pubblici. L'endpoint del profilo web restituisce bio, conteggi dei follower e post recenti come JSON quando invii l'intestazione pubblica x-ig-app-id, e le pagine di hashtag e luoghi espongono volumi e metadati. Le liste di follower, i likers e gli account privati necessitano di una sessione autenticata e dovrebbero essere evitati per la ricerca.

Perché Instagram continua a limitare la velocità del mio scraper?

Stai colpendo l'endpoint troppo velocemente da un IP che Instagram non si fida. Rallenta con ritardi casuali, limita la concorrenza e passa ai proxy mobili - un IP mobile CGNAT è condiviso da migliaia di utenti reali, quindi Instagram è molto più lento a bloccarlo rispetto a un indirizzo di datacenter.

È legale estrarre dati da Instagram?

Raccogliere dati pubblici e non personali per la ricerca è generalmente a basso rischio, ma i termini di Instagram limitano l'automazione e i dati personali sono regolati dal GDPR e leggi simili. Rimani sugli endpoint pubblici, minimizza i dati personali che conservi e consulta un avvocato per qualsiasi cosa che coinvolga individui identificabili su larga scala. Questo non è un consiglio legale.

Qual è il miglior tipo di proxy per lo scraping di Instagram?

Proxy mobili. Poiché il CGNAT mappa un IP mobile a molti veri abbonati, la piattaforma non può bannarlo senza danni collaterali, rendendo le uscite mobili le più durevoli per una raccolta sostenuta. I proxy residenziali sono una ragionevole seconda scelta; gli IP di datacenter vengono bloccati più velocemente.

I dati pubblici di Instagram sono molto accessibili per le ricerche di marketing - gli endpoint di profilo, post e hashtag restituiscono ancora JSON pulito. Le due variabili che decidono il successo sono l'IP (vincono i mobili) e la moderazione (solo dati pubblici, ritmo umano, dati personali minimi). Se fai bene queste cose, l'endpoint rimane aperto.

Inizia a raccogliere con i proxy mobili di QuantumProxies