L'immagine: il sito Web è stato modificato di recente. Il sito contiene più di 100 pagine, ognuna contenente la propria immagine: immagine. Come posso chiedere o forzare Facebook a riesaminare tutte le pagine, in modo che l'immagine venga aggiornata? Utilizzare lo strumento di debugger di Facebook sarà un compito troppo noioso. Fino a quando Facebook non riesaminerà il sito, non potrò inviare la raccolta per l'app.Chiedi a facebook di riscrivere l'URL
risposta
Hai due alternative qui, nella tua situazione
Come per loop risposta di ysrb attraverso la lista dei tuoi URL con l'Open Strumento grafico Debugger
Oppure attendere pazientemente per 30 giorni fino a quando Facebook riproverà le pagine come indicato nella documentazione here
Perché e quando fa Facebook raschiare il mio sito web?
Facebook ha bisogno di racchiudere i collegamenti condivisi su Facebook per sapere quale collegamento visualizzare le informazioni di anteprima su Facebook.com o su Facebook per iOS e Android. Ciò accade ogni 30 giorni per garantire che le proprietà siano aggiornate. Anche la pagina collegata viene raschiata quando l'URL viene inserito nello strumento Debugger.
Facebook osserva le intestazioni della cache sui tuoi URL - guarderà "Scadenza" e "Controllo della cache" in ordine di preferenza. Tuttavia, anche se si specifica un tempo più lungo, Facebook rascherà la pagina ogni 30 giorni.
Si può provare ad anello dalla lista di URL e fare
curl "http://developers.facebook.com/tools/debug/og/object?q=$url"
Ok. L'elenco esatto di URL è sconosciuto. Circa ora ci sono 310 url. Specificare manualmente ognuno di essi per il ciclo richiederà molto tempo e potremmo perdere qualche url a causa dell'errore humman –
Devi avere una sorta di sitemap.xml o qualcosa del genere. Anche se si tratta di file statici, puoi elencarlo e creare l'url – ysrb
Testato: questo metodo non funziona. – GTCrais
È possibile forzare una ri-raschiare via API, come descritto qui: https://developers.facebook.com/docs/opengraph/using-objects/#update:
POST /?id={object-instance-id or object-url}&scrape=true
(Ma se non si dispone di un vero e proprio elenco degli URL interessati, questo è un pò discutibile. poi si può solo aspettare fino a quando non avviene automaticamente, immagino.)
Questa è ottima. La risposta include anche i dati aggiornati dell'OR, quindi puoi controllarlo tu stesso durante lo scraping – bloudermilk
Questa è la vera risposta e dovrebbe essere il prescelto, peccato che l'altro sia, dal momento che non è nemmeno una risposta – vsync
Questa è sicuramente la risposta corretta POSTing /? id =
$config = array(
"appId" => 'APP_ID',
"secret" => 'APP_SECRET');
$fb = new Facebook($config);
$r=$fb->api('/','POST',array(
'id'=>PAGE_URL,
'scrape'=>'true'
));
ricciolo --insecure "https://graph.facebook.com/?id=[YOUR-URL-TO-SCRAPE]&scrape=true"
arricciatura deve essere ssl capable (come è https://graph...)
Ho capito questo, grazie molte. - Devi essere sicuro di impostare l'agente utente, altrimenti FB deciderà di non onorare la richiesta di scrap, comunque. –
Si noti che Facebook richiede che i parametri vengano passati tramite POST
. Facebook ignora semplicemente le richieste GET
.
Ecco il codice in C#.
HttpWebRequest httpRequest = (HttpWebRequest)WebRequest.Create(
"https://graph.facebook.com/?id="
+ HttpUtility.UrlEncode("http://www.example.com/index.html")
+ "&scrape=true");
httpRequest.Method = "POST";
using (HttpWebResponse httpResponse = (HttpWebResponse)httpRequest.GetResponse())
{
using (Stream responsestream = httpResponse.GetResponseStream())
{
if (responsestream != null)
{
using (StreamReader bodyreader = new StreamReader(responsestream))
{
string fbResp = bodyreader.ReadToEnd();
}
}
}
}
- 1. ios: a livello di codice chiedi l'accesso a Game Center?
- 2. htaccess riscrivere tutto a index.html
- 3. Chiedi a Hubot di parlare ad una certa ora?
- 4. Chiedi a MongoDB se è Master di un bashscript
- 5. Come riscrivere domain.com a www.domain.com con HAProxy?
- 6. STPrivilegedTask chiedi la password per ogni attività
- 7. Chiedi oggetto specifico da RDATA presentare
- 8. ASP.NET MVC 5.1 C# OWIN autenticazione o login di facebook chiedi compleanno, Mi piace, profilo pubblico, numero di telefono
- 9. Yii Advanced URL riscrivere
- 10. Come riscrivere stesso file
- 11. nginx sottodominio riscrivere
- 12. ProxyHTML per riscrivere l'URL
- 13. apache: autenticazione di base prima di riscrivere
- 14. Chiedi a GDB di elencare tutte le funzioni in un programma
- 15. Riscrivere ospite nginx e ProxyPass di calamari
- 16. Riscrivere un'app php in CakePHP
- 17. Riscrivere URL nel pacchetto web
- 18. aggiungi file a un archivio senza leggere/riscrivere l'intero archivio
- 19. È possibile anteporre dati a un file senza riscrivere?
- 20. Come posso riscrivere/reindirizzare da http a https in Go?
- 21. Riscrivere nginx per pushState-URL
- 22. Accesso a Facebook Messenger
- 23. Come riscrivere meglio questa funzione di ripetizione
- 24. Riscrivere un'istruzione condizionale in Java
- 25. Intercetta l'evento click su un pulsante, chiedi conferma, quindi procedi
- 26. Come lo chiedi in Mongo? (Non è nullo)
- 27. Numero di pulsanti simili a Facebook
- 28. HipHop di Facebook: a cosa serve?
- 29. Errori di Facebook relativi a auth.extendSSOAccessToken
- 30. Ineligible app Invio a Facebook
grazie mille ..:) –
@ChrisHoughton - https://developers.facebook.com/docs/plugins/faqs/#scraperinfo (al 2015.04.08) – changokun
Questo non è più corretto. C'è un endpoint API che Doug e altri spiegano in un'altra risposta. –