【问题标题】:How to filter retweets and replies from Twitter User Stream using Twitter4j?如何使用 Twitter4j 过滤来自 Twitter 用户流的转发和回复?
【发布时间】:2012-06-09 22:07:12
【问题描述】:

我正在使用 Twitter4j TwitterStream.user() 来读取经过身份验证的用户的时间线。我只对我的用户关注的用户的推文感兴趣。 我从流中获得的大约 99% 的状态是我的用户不关注的用户的转发和回复。我通过维护我的用户关注列表并根据列表检查每个状态来过滤它们,此外我正在检查 status.getInReplyToStatusId 是否为零。它有效,但似乎效率很低,因为我读取的 99% 的数据随后被过滤掉了。 twitter4j 有什么方法可以指示用户流只发送原始推文而不发送转发和回复?

【问题讨论】:

    标签: twitter4j twitter-streaming-api


    【解决方案1】:

    似乎可以通过参数过滤回复的推文,但我不确定它是否在 twitter4j 中实现。但是关于转推,我认为您必须手动过滤掉它们。

    来自用户流api:

    用户流消息

    消息类型

    REST 未返回一些流式消息 蜜蜂。有关信息,请参阅流式消息类型。

    来自用户关注的帐户的数据

    with 参数控制接收到的消息类型。这 用户流的默认值是 with=followings,它提供有关的数据 用户和关于用户的追随者( 经过身份验证的用户如下)。 with=user 的设置只发送事件 关于用户,而不是关于他们的追随者的事件。

    回复

    默认情况下,@replies 仅从相互关注者发送。所有@回复 可以使用 replies=all 参数启用以下操作。为了 例如,如果 Alice 关注 Bob,但 Alice 没有关注 Carol,则 默认情况下,如果 Bob @replies Carol,Alice 看不到这条推文。这 默认行为模仿 twitter.com 和 api.twitter.com 行为。如果 应用程序希望显示所有@replies,或过滤的子集 @replies,使用replies=all。

    私信

    直接消息仍然需要适当的权限。见 应用权限模型。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-15
      • 2019-07-25
      • 2014-09-03
      • 2012-03-24
      • 2015-01-23
      • 2014-06-05
      • 1970-01-01
      • 2019-06-05
      相关资源
      最近更新 更多