【问题标题】:In Twitter API How to check a tweet has been deleted on twitter if I check it via a Tweet id saved in my database在 Twitter API 中,如果我通过保存在我的数据库中的推文 ID 检查推文,如何检查推文是否已在推特上被删除
【发布时间】:2018-08-02 13:40:15
【问题描述】:

我使用 Twitter API 来获取带有特定哈希标签的推文以及存储在我的数据库中的所有数据。

我目前从事核心 PHP 工作。

感谢 Twitter,API 运行良好

现在问题与已删除的推文有关,实际上,当我的 ajax 文件中直接出现 100 条最新推文的记录时,我将它们存储在我的数据库中,并带有一个标志 visible="y" 。现在我希望,如果存储在我的数据库中的任何推文被从响应式推特帐户中删除,则会自动将可见 =“N”设置到我的数据库中。

我在互联网上进行了很多搜索,但找不到任何受人尊敬的答案。 请回复我并询问我是否需要任何进一步的信息。

感谢 Stack Overflow 提供了一个良好的社区。​​p>

【问题讨论】:

    标签: twitter


    【解决方案1】:

    按照您的建议进行操作的唯一方法是运行一些进程,从您的数据库中读取推文并检查它们是否仍然存在。

    您可以调用 https://api.twitter.com/1.1/statuses/lookup.json 并传递一个逗号分隔的 100 条推文列表,然后将返回值与您的数据库进行比较,以查看您请求的推文是否仍然可用。

    您必须一次遍历数据库 100 条推文。根据您存储的推文数量,您可能会遇到速率限制问题。

    【讨论】:

    • 但是你不认为它会增加我的数据库获取并降低我的项目速度,因为假设我已经在我的数据库中存储了 2000 条记录,现在我从 Twitter 获取 100 条记录并将它们匹配到我的数据库用于检查当前未删除的推文,因此我必须在有限的时间内检查有多少推文是实时的。欢迎对我的回答进行任何修改。
    • 是的,但没有简单的方法可以解决。你可能想问的问题是:“我真的需要知道一条推文是否被删除吗?”推文的创建和传播速度如此之快,以至于删除一条推文几乎毫无意义。为什么你需要知道一条推文是否被删除?
    • 实际上我在我的网站首页上显示了最新的 100 条推文,假设 2 小时后没有新的推文,并且从 100 条较早的记录中删除了 5 条推文,但我已将这些记录保存在我的数据库中。因此,如果我的数据库中的一条推文正在从 Twitter 中删除,那么它也必须从我的数据库中删除。如果我错了,请告诉我...
    • 我在我的移动应用程序中的解决方案是获取从其余 api 检索到的第一个和最后一个项目的 id,并在插入它们之前在数据库中的范围之间进行删除,这很容易,快速并且所有已删除的记录都消失了,对 api 进行一次 fetch 调用,对本地数据库进行一次删除语句。就我个人而言,我不会存储 2000 条推文,在用户滚动时间线时重新获取,并且如果 n 小时等至少在数据库中缓存......
    • @DWRoelands 根据 twitter 的开发者政策,你实际上需要保持你的数据是最新的(例如,你不能显示已被删除或不再可见的推文):@ 987654322@
    【解决方案2】:

    您可以将状态查找调用 wit map 参数设置为 true。对于已删除或受保护的推文,它将返回 null。与 map 设置为 false 相比,这是更可靠的方法,因为很多时候查找调用不会返回推文,即使它没有被删除(尤其是转发)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-23
      • 2022-01-25
      • 2021-07-17
      • 2021-09-17
      • 1970-01-01
      • 2018-10-07
      • 1970-01-01
      • 2013-09-17
      相关资源
      最近更新 更多