Crawler web di Meta

Meta utilizza crawler web (software che recuperano contenuti da siti web o app web) per diversi scopi. Questa pagina elenca le stringhe User Agent (UA) che identificano i crawler web di Meta più comuni e per cosa vengono impiegati. Questa pagina fornisce anche indicazioni su come configurare il file robots.txt in modo che i nostri crawler interagiscano correttamente con il tuo sito.

FacebookExternalHit

Lo scopo principale di FacebookExternalHit è scansionare i contenuti di un'app o di un sito web condivisi su una delle app di Meta, come Facebook, Instagram o Messenger. Il link potrebbe essere stato condiviso con il copia e incolla oppure usando il plug-in social di Facebook. Questo crawler raccoglie, memorizza nella cache e visualizza le informazioni sull'app o sul sito web come il titolo, la descrizione e l'immagine in miniatura.

La stringa UA specifica riportata nei file di log sarà simile a una delle seguenti:

  • facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)
  • facebookexternalhit/1.1
  • facebookcatalog/1.0

Il crawler FacebookExternalHit può bypassare robots.txt quando esegue controlli di sicurezza o integrità, come la verifica della presenza di malware o contenuti dannosi.

Requisiti del crawler

  • Il tuo server deve utilizzare codifiche gzip e deflate.
  • Qualsiasi proprietà di Open Graph deve essere elencata prima del primo 1 MB del tuo sito web o della tua app, altrimenti verrà troncata.
  • Assicurati che il contenuto possa essere sottoposto a scansione da parte del crawler entro pochi secondi o Facebook non sarà in grado di visualizzare il contenuto.
  • La tua app o il tuo sito web dovrebbe generare e restituire una risposta con tutte le proprietà richieste in base ai byte specificati nell'intestazione Range della richiesta del crawler o dovrebbe ignorare del tutto l'intestazione Range.
  • Aggiungi nella lista di elementi consentiti le stringhe dello user agent o gli indirizzi IP (più sicuro) utilizzati dal crawler.

Risoluzione dei problemi

Se il contenuto della tua app o del tuo sito web non è disponibile al momento della scansione, puoi forzare una scansione quando sarà disponibile passando l'URL attraverso lo strumento Debugger di condivisione o utilizzando l'API Sharing.

Puoi simulare una richiesta del crawler con il seguente codice:

curl -v --compressed -H "Range: bytes=0-524288" -H "Connection: close" -A "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)" "$URL"

Meta-ExternalAgent

Il crawler Meta-ExternalAgent scansiona il web per casi d'uso come addestramento di modelli di IA o miglioramento di prodotti indicizzando direttamente i contenuti.

La stringa UA specifica riportata nei file di log sarà simile a una delle seguenti:

  • meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)
  • meta-externalagent/1.1

Questo crawler verrà implementato gradualmente nelle prossime settimane; il completamento dell'implementazione è previsto entro il 31/10/2024.

Meta-ExternalFetcher

Il crawler Meta-ExternalFetcher esegue recuperi iniziati dall'utente di singoli link per supportare specifiche funzioni del prodotto. Poiché il recupero viene iniziato da un utente, questo crawler può bypassare le regole del file robots.txt.

La stringa UA specifica riportata nei file di log sarà simile a una delle seguenti:

  • meta-externalfetcher/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)
  • meta-externalfetcher/1.1

Il file robots.txt

Configurando il file robots.txt sul tuo sito web, puoi indicare ai crawler web di Meta come preferisci che interagiscano con il tuo sito. Per bloccare questi crawler, aggiungi un "disallow" per il crawler specifico al file robots.txt. Il crawler Meta-ExternalFetcher può bypassare il file robots.txt perché esegue recuperi richiesti dall'utente. Inoltre, il crawler FacebookExternalHit può bypassare il file robots.txt quando effettui controlli di sicurezza o integrità.

User-agent: meta-externalagent
Allow: /                    # Allow everything
Disallow: /private/         # Disallow a specific directory

IP crawler

Se un crawler ha un indirizzo IP di origine presente nell'elenco generato dal comando seguente, ciò indica che il crawler proviene da Meta.

whois -h whois.radb.net -- '-i origin AS32934' | grep ^route  

Questi indirizzi IP cambiano spesso. Per maggiori informazioni, vai alla nostra pagina web di peering o ai relativi dati scaricabili (formato CSV).

Esempio di risposta

...
route:      69.63.176.0/21
route:      69.63.184.0/21
route:      66.220.144.0/20
route:      69.63.176.0/20
route6:     2620:0:1c00::/40
route6:     2a03:2880::/32
route6:     2a03:2880:fffe::/48
route6:     2a03:2880:ffff::/48
route6:     2620:0:1cff::/48
... 

Contattaci

Per eventuali domande o dubbi, contattaci all'indirizzo webmasters@meta.com (webmaster di Meta).