如何获取Twitter返回的Twitter4j关键字?

时间:2015-08-20 20:14:48

标签: twitter twitter4j twitter-streaming-api apache-storm

我正在构建一个使用Apache Storm和库Twitter4j来处理实时Twitter的系统。但我有一个问题:有办法知道哪个关键字过滤器给了我这条推文吗?

示例:

//Topology builder parameter
String keywords = {"Keyword 1", "Keyword 2"};

//Call of Twitter strem API return
  @Override
  public void execute(Tuple tuple, BasicOutputCollector collector) {
      Status status = (Status) tuple.getValueByField("tweet");
      System.out.println(status);
  }

//Result of Sysout
StatusJSONImpl{createdAt=Thu Aug 20 16:55:52 BRT 2015, id=645265788760587264, text='RT @user: This is a Keyword 1 tweet' ... }

StatusJSONImpl{createdAt=Thu Aug 20 16:55:56 BRT 2015, id=645265788760587265, text='RT @user: This is a Keyword 2 tweet' ... }

我如何知道没有字符串比较使用了哪个关键字?我没有找到具有关键字的对象的任何属性,只有tweet数据。

1 个答案:

答案 0 :(得分:0)

Twitter Streaming API仅返回标准推文payloads,它不会为您的查询添加任何其他元数据。执行所要求的唯一方法是根据关键字列表处理邮件客户端。