首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有更好的方法来使用Twitter4J捕捉tweet?

是否有更好的方法来使用Twitter4J捕捉tweet?
EN

Stack Overflow用户
提问于 2016-02-18 05:02:19
回答 1查看 398关注 0票数 1

我试着用StatusListener和TwitterStream的方法来实现这一点,但是它似乎并没有捕捉到来自我想要的用户的所有tweet。

代码语言:javascript
复制
StatusListener statusListener = new StatusListener() {
    @Override
    public void onStatus(Status status) {
        //my code
    }
    //other requiredly-overriden methods
}
ConfigurationBuilder configurationBuilder = new ConfigurationBuilder();
configurationBuilder.setOAuthConsumerKey("XXXXX");
configurationBuilder.setOAuthConsumerSecret("XXXXXXX");
TwitterStream twitterStream = new TwitterStreamFactory(configurationBuilder.build()).getInstance(new AccessToken("XXXXX", "XXXXXXX"));
twitterStream.addListener(statusListener);
twitterStream.sample();

因此,我每3秒手动检查一次我想要发布的用户是否发布了新的推文。这是完美的工作,但似乎不干净和讨厌。有更好的办法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-18 18:00:38

我不完全明白。你是如何从你感兴趣的用户那里捕捉到这些推特的?如果您只是使用twitter流,然后检查一条tweet是否来自您想要的用户,您可以从不同的来源获得tweet(如果有很多消息,可能会丢失一些tweet)。

如果您想跟踪某些用户,您应该使用一个过滤器,如下所示:

代码语言:javascript
复制
StatusListener statusListener = new StatusListener() {
    @Override
    public void onStatus(Status status) {
        //your code to manage the statuses
    }
    //other requiredly-overriden methods
}
ConfigurationBuilder configurationBuilder = new ConfigurationBuilder();
configurationBuilder.setOAuthConsumerKey("XXXXX");
configurationBuilder.setOAuthConsumerSecret("XXXXXXX");
TwitterStream twitterStream = new TwitterStreamFactory(configurationBuilder.build()).getInstance(new AccessToken("XXXXX", "XXXXXXX"));
twitterStream.addListener(statusListener);

//from here is different at your code

//you need to set up your user list, with their users id's!
long[] userslist = YOUR USER LIST;
//then you create a filter
FilterQuery filtre = new FilterQuery();
//and use that filter to follow the users that you want and to start the stream
filtre.follow(userslist);
twitterStream.filter(filtre);

使用过滤器,您可以跟踪多达5000不同的用户,您将得到他们的推文,当他们被转发时,当他们被提到。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35473224

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档