Em outro fórum Discourse, @sam sugeriu que eu fizesse um relatório de bug aqui: Parece haver (pelo menos) falha intermitente no oneboxing de artigos da CNN. Como este é um site de grande destaque, parece bastante significativo. Não está claro se é um problema de limitação de taxa, um bloqueio de user-agent, um problema do lado do Discourse, um problema real com os dados oEmbed, ou o quê.
Exemplos:
(Exemplos adicionais removidos devido a ser um Novo Usuário.)
Os links da CNN reportados não estão sendo exibidos em onebox porque o tamanho da resposta é de 2,7mb, o que é maior que o limite atual de 2mb. Podemos corrigir isso aumentando o tamanho padrão, mas gostaria de entender melhor o risco de fazê-lo.
Depende do motor onebox. Alguns motores onebox como a Amazon raspam certas informações, como o preço do item, de dentro do <body>. Para motores opengraph, em teoria, só precisamos de certas tags como <meta> no <head>.
A maneira mais eficiente seria analisar a resposta em busca das informações necessárias enquanto transmitimos a resposta, mas mudar todos os nossos motores para fazer isso provavelmente exigirá um esforço considerável e é uma solução muito mais complexa.
Na verdade, o Nokogiri, que usamos para analisar a resposta HTML, é capaz de analisar texto HTML incompleto, portanto, não há necessidade de descartar toda a resposta quando ela é muito grande. Acho que podemos continuar limitando o corpo da resposta a 2 MB e, se o tamanho da resposta exceder isso, tentaremos analisar os primeiros 2 MB.