我努力让其他用户通过twitter4j api提及时间表。我可以发现它只能获得其他用户的UserTimeline。似乎没有办法让其他用户提及时间表 (我发现here - 查找"接口时间线资源")
有没有办法让其他用户提及时间表???
答案 0 :(得分:0)
您可以使用getUserTimeline()类的Twitter方法。
参考文献: 1. http://twitter4j.org/javadoc/twitter4j/Twitter.html 2. http://twitter4j.org/javadoc/twitter4j/Status.html
答案 1 :(得分:0)
您可以使用TimelineResources的getMentionsTimeline()方法获取MentionsTimeline作为您提及的链接,并返回一些推文的限制。
查找以下示例示例,该示例将为您提供MentionsTimeline。
Twitter twitter = new TwitterFactory().getInstance();
try {
User user = twitter.verifyCredentials();
List<Status> statuses = twitter.getMentionsTimeline();
System.out.println("Showing @" + user.getScreenName() + "'s mentions.");
for (Status status : statuses) {
System.out.println("@" + status.getUser().getScreenName() + " - " + status.getText());
}
} catch (TwitterException te) {
te.printStackTrace();
System.out.println("Failed to get timeline: " + te.getMessage());
System.exit(-1);
}
答案 2 :(得分:0)
Twitter API没有用于查看其他用户提及的端点(statuses/mentions_timeline API仅返回经过身份验证的用户的提及)。
您应该使用search API,使用您想要提及的用户的@screen_name作为查询字符串。请注意,Twitter Search API可能不会返回给定用户的所有提及(它表示“搜索API专注于相关性而非完整性”)。
因此,使用Twitter4j,您可以使用以下
获取@NASA提及Twitter twitter = new TwitterFactory().getInstance();
try {
Query query = new Query("@NASA");
QueryResult result;
do {
result = twitter.search(query);
List<Status> tweets = result.getTweets();
for (Status tweet : tweets) {
System.out.println("@" + tweet.getUser().getScreenName() + " - " + tweet.getText());
}
} while ((query = result.nextQuery()) != null);
System.exit(0);
} catch (TwitterException te) {
te.printStackTrace();
}