4

我正在通过发布它们来玩 Facebook 链接。在第一次来自包含“facebookexternalhit”的用户代理的访问将访问您的网站并查找一些元标记

到目前为止效果很好。但是,如果我尝试重新发布链接,则不会发生任何后续呼叫。如何触发让 facebook 再次读取页面?

我可以使用一些 API 调用来触发更新吗?

4

2 回答 2

4

Like Button的文档中它说:

Facebook 什么时候抓取我的页面?

Facebook 需要抓取您的页面以了解如何在网站周围显示它。

Facebook 每 24 小时抓取一次您的页面,以确保属性是最新的。当 Open Graph 页面的管理员单击 Like 按钮以及将 URL 输入 Facebook URL Linter 时,该页面也会被抓取。Facebook 会观察您 URL 上的缓存标头 - 它会按优先顺序查看“过期”和“缓存控制”。但是,即使您指定更长的时间,Facebook 也会每 24 小时抓取一次您的页面。

爬虫的用户代理是:“facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)”

Linter 现在被称为Facebook 调试器,当您将它用于 url 时,它将清除 facebook 缓存中相同的 url,然后缓存新结果。

于 2012-04-18T07:42:39.100 回答
1

您可以使用的一个技巧是简单地将“随机”GET 参数附加到您共享的 URL。它不会对页面内容产生任何影响,但会导致 Facebook 的爬虫机器人重新访问您的网站。

原始网址:

http://example.com
http://example.com?param=1

将强制“重新访问”的新 URL:

http://example.com?cache_buster=784932789532
http://example.com?param=1&cache_buster=784932789532
于 2015-09-16T21:23:58.693 回答