如何使用 twitter4j 获取实时 Twitter 提要(或 Twitter 提供的任何部分,我听到的 1%),而不让 twitter4j 将所有内容打印到控制台输出?尽管我最初认为这意味着必须关闭日志记录,但尝试关闭日志记录并没有帮助。我更喜欢“代码内”解决方案,而不是需要我传递 VM 参数的解决方案。
针对我面临的问题的 SSCCE 是:
import twitter4j.*;
public class StreamTweets {
public static void main(String[] args) {
StatusListener listener = new StatusListener(){
public void onStatus(Status status) {
// do whatever I want here
}
public void onDeletionNotice(StatusDeletionNotice statusDeletionNotice) {}
public void onTrackLimitationNotice(int numberOfLimitedStatuses) {}
public void onException(Exception ex) {
ex.printStackTrace();
}
public void onScrubGeo(long arg0, long arg1) {}
public void onStallWarning(StallWarning arg0) {}
};
TwitterStream twitterStream = new TwitterStreamFactory().getInstance();
twitterStream.addListener(listener);
twitterStream.sample();
}
}
注意:无论我需要做什么,这需要将所有内容存储到数据库中,我都将在 StatusListener() 的 onStatus() 方法中执行。不确定这是否非常相关,但我想我会把它放在那里以防万一。
最佳答案
如果您通过 twitter4j.properties 提供 Twitter 凭据(如上所述)here ,然后将 twitter4j.properties 文件的第一行更改为
debug=false
这将在接收 Twitter 流时停止打印到控制台!
关于java - 显示 Twitter 流时阻止 twitter4j 打印输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27502790/