过滤推特4j流

2022-09-03 00:18:21

我正在尝试使用以下代码过滤我的twitter4j流:

    TwitterStream twitterStream = getTwitterStreamInstance();

    // Listener
    twitterStream.addListener(listener);

    // Filter
    FilterQuery filtre = new FilterQuery();
    String[] keywordsArray = { "iphone", "samsung" };
    filtre.track(keywordsArray);
    twitterStream.filter(filtre);

    // Listening
    twitterStream.sample();

但结果是,例如:

27/59 - "Taking a risk over something only means that you want it more than anything"
28/63 - The more attractive you are, the more awkward I am.
29/64 - the thing about pain is that it demands to be felt

而且我没有恢复我想遵循的关键字,问题出在哪里?


答案 1

您不需要:

twitterStream.sample();

如果你删除它,你应该开始看到与你的筛选器查询匹配的推文。

当你调用你的听众时,将收到过滤的推文,但是,因为你随后调用,你有效地将你的听众正在接收的过滤流替换为样本蒸汽,这是一个随机选择的推文。filtersample

换句话说,调用样本过滤器,但不要同时调用两者。


答案 2

推荐