2

在 Facebook 调试器中,抓取 URL“ https://www.givingway.com/organization/the-light-and-leadership-initiative ”会产生错误:

损坏的图像

提供 og:image URL,https ://d141thk7ygtt3c.cloudfront.net/043a7261-eb4f-48ce-9db6-8cbeefcf86df.jpg无法作为图像处理。它可能已损坏或格式无效。

同时抓取 URL“ https://www.givingway.com/organization/youth-in-action-against-poverty-and-hivaids-yaapha ”工作正常。

我不知道是什么导致了这个问题,因为两个页面:

  • 两者都是从同一个模板生成的,并且共享相同的 HTML 结构。
  • 有一个 og:image 具有相同的结构。

<meta property="og:image" content="https://d141thk7ygtt3c.cloudfront.net/043a7261-eb4f-48ce-9db6-8cbeefcf86df.jpg" />

<meta property="og:image" content="https://d141thk7ygtt3c.cloudfront.net/b954d1df-57e6-4beb-acae-2916997a8e4e.jpg" />

  • 两张图片都是JPEG。
  • 在单独的选项卡中打开图像 URL 会显示图像 - 这不是我期望的损坏页面的行为。

这种不一致发生在不同的页面上 - 某些页面被成功抓取,而其他页面则没有。

4

2 回答 2

1

Facebook 上有一个开放的错误(2 月 8 日开放)。当og:image标签指向托管在 CloudFront 上的图像时,Facebook 调试器的行为不一致 - 可以处理一些而不能处理其他。希望 Facebook 和 CloudFront 能在不久的将来解决这个问题。

于 2019-02-18T08:30:25.307 回答
0

如果您通过库(例如 python boto3)将图像文件上传到 s3,请检查 ContentType 参数。

我上传了一个没有 ContentType 参数的带有 boto3 的图像文件,元数据中文件的内容类型设置了默认值“binary/octet-stream”。

在我通过 ContentType="image/png" 参数后,元数据设置良好,facebook og 标签看起来不错。(下图描述,不在旁边)

于 2020-05-29T09:54:08.627 回答