【问题标题】:Twitter API with a Logic applied to it应用了逻辑的 Twitter API
【发布时间】:2020-07-28 22:53:25
【问题描述】:

我是 Java 编程的初学者,我有一个任务需要从 Twitter API 获取帖子并使用 Eclipse Java Photon 实现逻辑。

我设法使用 Twitter 4j API 获取 Twitter 帖子,但我不知道如何计算最后 5 条推文的每条推文的平均字数。

谁能帮我理解如何做到这一点?

【问题讨论】:

    标签: java api twitter logic eclipse-photon


    【解决方案1】:

    您可以获取推文内容,然后将它们拆分为单词。之后,您可以通过计算单词并将其除以推文数来获得平均单词数。

    此代码可以帮助您实现该逻辑:

    
    public class Solution {
        public static void main(String args[]) {
            Solution.printAverageWordCount();
        }
    
        public static void printAverageWordCount(){
            Query query = new Query("");
            query.setCount(100);
            query.setResultType(Query.RECENT);
    
            int statusLimit = 5;
            int wordCount = 0;
            int tweetCount;
    
            do {
                QueryResult result = twitter.search(query);
                statuses = result.getTweets();
                System.out.prinln("Fetch " + statuses.size() + " statuses. Completed in: " + result.getCompletedIn());
    
                tweetCount = 0;
    
                for (Status status : statuses) {
                    wordCount += status.getText().split("\\s+").length;
                    tweetCount++;
                    if(tweetCount >= statusLimit) {
                        break;
                    }
                }
    
                query = result.nextQuery();
            } while (tweetCount < statusLimit);
    
    
            // calculate average
    
            double average = wordCount/(double)tweetCount;
            System.out.println(average);
        }
    
    }
    

    【讨论】:

    • 你知道如何使用 System.out.println 输出这个方法吗?我需要在哪里调用它?
    • 你可以从函数中返回average变量,然后在你调用这个函数的地方打印出来
    • 线程“main”中的异常 400:请求无效。随附的错误消息将解释原因。这是版本 1.0 速率限制期间将返回的状态代码 (dev.twitter.com/pages/rate-limiting)。在 API v1.1 中,未经身份验证的请求被视为无效,您将收到此响应。消息 - 缺少查询参数。代码 - 25
    • 我遇到了上面的错误。对于 Logger 类,我使用这些 import org.slf4j.Logger;导入 org.slf4j.LoggerFactory;而这个静态 Logger logger = LoggerFactory.getLogger(FirstTwitterApp.class);但我遇到了这个错误... SLF4J:没有找到 SLF4J 提供程序。 SLF4J:默认为无操作 (NOP) 记录器实现 SLF4J:有关详细信息,请参阅 slf4j.org/codes.html#noProviders。最后一个问题,是否需要在main方法中实现ConfigurationBuilder?
    • 其实你并没有使用记录器,而是可以使用 System.out.println 将相同的消息打印到控制台
    猜你喜欢
    • 2017-12-07
    • 1970-01-01
    • 1970-01-01
    • 2013-05-12
    • 2020-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-28
    相关资源
    最近更新 更多