如何防止 Twitter API 中的状态更新自动生成链接预览?

iva*_*nyk 5 twitter tweepy

我正在使用 Twitter API以编程方式发布状态更新。但是,当我的状态包含链接时,Twitter 会自动添加该链接的预览。有时这不是所需的行为,但是,我没有在 API 中找到用于禁用它的属性。

我知道我们可以在通过 Twitter 网站手动发布时删除链接预览,如此处所述 在Twitter 上发布链接时删除预览图像,所以我怀疑这是可能的,但 API 从未提及。

另外,我正在使用Python 库,但如果这能解决我的问题,tweepy我很乐意诉诸原始库。POST

有什么想法应该添加到请求中以防止生成链接预览吗?

iva*_*nyk 9

实际上,我两次尝试在网络上手动向 Twitter 发帖:

  1. 使用生成的链接预览
  2. 明确删除预览(生成预览后单击十字按钮)

在执行此操作时,我观察了该网站发送到 Twitter 服务器的有效负载(使用 Chrome 开发工具)。

有趣的是,这两条推文之间的唯一区别只有一个属性:card_uri: tombstone://card. 更具体地说,该属性出现在推文中,但没有预览

之后,我实际上尝试去向card_uri我的状态更新请求添加属性,它实际上完成了工作:预览没有自动呈现。

方便的是,tweepy库在方法中有一个可选card_uri参数update_status

总而言之,您需要card_uri='tombstone://card'在请求中进行设置,以防止 Twitter 自动生成链接预览。

不幸的是,我没有在 API 中(或者在 Google 中)找到任何对此的引用,所以我不相信这是一个持久的解决方案,但这至少是一个开始。