【发布时间】:2021-03-19 05:35:36
【问题描述】:
我需要检索推文列表,其中包含许多信息(可以从一些 Tweet.getX() 方法轻松检索),但推文的整个 JSON 除外。
我不知道如何从 QueryResult 中获取属于推文的 JSON。谁能帮帮我?
【问题讨论】:
-
TwitterObjectFactory.jsonStoreEnabled是如何使用的?
我需要检索推文列表,其中包含许多信息(可以从一些 Tweet.getX() 方法轻松检索),但推文的整个 JSON 除外。
我不知道如何从 QueryResult 中获取属于推文的 JSON。谁能帮帮我?
【问题讨论】:
TwitterObjectFactory.jsonStoreEnabled 是如何使用的?
您可以通过在传递给 TwitterFactory 构造函数的 ConfigurationBuilder 对象上设置 setJSONStoreEnabled(true); 来获取推文的 JSON。
这是一个完整的例子:
public static void main(String[] args) throws TwitterException {
ConfigurationBuilder cb = new ConfigurationBuilder();
cb.setJSONStoreEnabled(true);
Twitter twitter = new TwitterFactory(cb.build()).getInstance();
Query query = new Query("lizardbill");
QueryResult result = twitter.search(query);
for (Tweet tweet : result.getTweets()) {
System.out.println(tweet.getFromUser() + ":" + tweet.getText());
String json = DataObjectFactory.getRawJSON(tweet);
System.out.println(json);
}
}
【讨论】:
DataObjectFactory 现已弃用,您需要使用TwitterObjectFactory.jsonStoreEnabled
我认为 Bill 回答了这个问题,但那些还在想使用 TwitterObjectFactory 的人,我相信它是这样完成的:
ResponseList<Status> userTimeline = // init twitter instance
userTimeline.forEach(x -> {
String json = TwitterObjectFactory.getRawJSON(x);
System.out.println(json);
});
【讨论】: