当前位置: 首页 > 知识库问答 >
问题:

Twitter4j处理错误

吕越彬
2023-03-14

我试图遵循以下教程:

//Build an ArrayList to hold all of the words that we get from the
 imported tweets 
ArrayList<String> words = new ArrayList();  
 void setup() {   //Set the size of the stage, and the background to black. 
 size(550,550);  
 background(0); 
 smooth();
      //Credentials   ConfigurationBuilder cb = new ConfigurationBuilder();  
 cb.setOAuthConsumerKey("lPFSpjBppo5u4KI5xEXaQ");  
 cb.setOAuthConsumerSecret("SYt3e4xxSHUL1gPfM9bxQIq6Jf34Hln9T1q9KGCPs");
 cb.setOAuthAccessToken("17049577-Yyo3AEVsqZZopPTr055TFdySop228pKKAZGbJDtnV");
 cb.setOAuthAccessTokenSecret("6ZjJBebElMBiOOeyVeh8GFLsROtXXtKktXALxAT0I");
     //Make the twitter object and prepare the query  
 Twitter twitter = new  
 TwitterFactory(cb.build()).getInstance();   
 Query query = new Query("#OWS");  
  query.setRpp(100);
     //Try making the query request.   try {
     QueryResult result = twitter.search(query);
     ArrayList tweets = (ArrayList) result.getTweets();

     for (int i = 0; i < tweets.size(); i++) {
       Tweet t = (Tweet) tweets.get(i);
       String user = t.getFromUser();
       String msg = t.getText();
       Date d = t.getCreatedAt();
       println("Tweet by " + user + " at " + d + ": " + msg);

       //Break the tweet into words
       String[] input = msg.split(" ");
       for (int j = 0;  j < input.length; j++) {
        //Put each word into the words ArrayList
        words.add(input[j]);
       }
     };   }   catch (TwitterException te) {
     println("Couldn't connect: " + te);   }; }   void draw() {   //Draw a faint black rectangle over what is currently on the stage so
 it fades over time.   fill(0,1);   rect(0,0,width,height);
       //Draw a word from the list of words that we've built   int i = (frameCount % words.size());   String word = words.get(i);
       //Put it somewhere random on the stage, with a random size and colour   fill(255,random(50,150));   textSize(random(10,30));  
 text(word, random(width), random(height)); }

但是当我运行处理中的代码时,我得到以下错误。找不到名为tweet的类或类型

Ive通过拖放到处理IDE添加了twitter4j库。

共有1个答案

水睿
2023-03-14

这是一个使用Twitter4J3.0.5的基本示例。

import java.util.*;

List<Status>statuses = null;

TwitterFactory twitterFactory;
Twitter twitter;

void setup() {     
  size(100, 100);    
  background(0); 

  connectTwitter();    
  getTimeline();  
  getSearchTweets();
}  

void draw() {     
  background(0);
}  




// Initial connection
void connectTwitter() {  
  ConfigurationBuilder cb = new ConfigurationBuilder();  
  cb.setOAuthConsumerKey("xxx");
  cb.setOAuthConsumerSecret("xxx");
  cb.setOAuthAccessToken("xxx");
  cb.setOAuthAccessTokenSecret("xxx"); 

  twitterFactory = new TwitterFactory(cb.build());    
  twitter = twitterFactory.getInstance();  

  println("connected");
} 

// Get your tweets
void getTimeline() {     
  try {        
    statuses = twitter.getHomeTimeline();
  }   
  catch(TwitterException e) {         
    println("Get timeline: " + e + " Status code: " + e.getStatusCode());
  }     
  for (Status status:statuses) {               
    println(status.getUser().getName() + ": " + status.getText());
  }
}  
// Search for tweets

void getSearchTweets() {           
  try {        
    Query query = new Query("love");            
    QueryResult result = twitter.search(query);              
    for (Status status : result.getTweets()) {              
      println("@" + status.getUser().getScreenName() + ":" + status.getText());
    }
  }   
  catch (TwitterException e) {            
    println("Search tweets: " + e);
  }
}
 类似资料:
  • 我试图让处理显示包含我的关键字的最新推文。我卡住了。我不确定如何检查它是否在更新。我知道它可以拉出最近的推特,但到目前为止,我唯一可以查看最新推特的方法是重新启动我的程序。抱歉太乱了。

  • 使用下面的代码和twitter4j库,我终于成功地处理了我自己的tweets。我现在一直在努力调整代码,以吸引特定用户的推文,没有任何运气,不管网上有很多人发布了“工作代码”。有人能引导我,告诉我到底需要改变什么吗?谢了! 编辑-修改的代码,以获得用户推特。不产生错误或结果...

  • Twitter4J 是一个非官方的 Twitter API 的 Java 客户端开发包,使用 Twitter4j 可以轻松在你的应用中集成 Twitter 的服务,主要特点: 100% 纯 Java 支持 Android 平台和 Google App Engine 不依赖第三方开发包 内建 OAuth 支持 示例代码: // Creates the main objectTwitter twitt

  • 通过对错误类型实现 Display 和 From,我们能够利用上绝大部分标准库错误处理工具。然而,我们遗漏了一个功能:轻松 Box 我们错误类型的能力。 标准库会自动通过 Form 将任意实现了 Error trait 的类型转换成 trait 对象 Box<Error> 的类型(原文:The std library automatically converts any type that imp

  • 错误处理(error handling)是处理可能发生失败情况的过程。例如读取一个文件失败,然后继续使用这个失效的输入显然是有问题的。错误处理允许我们以一种显式的方式来发现并处理这类错误,避免了其余代码发生潜在的问题。 有关错误处理的更多内容,可参考官方文档的错误处理的章节。

  • 处理一个 RESTful API 请求时, 如果有一个用户请求错误或服务器发生意外时, 你可以简单地抛出一个异常来通知用户出错了。 如果你能找出错误的原因 (例如,所请求的资源不存在),你应该 考虑抛出一个适当的HTTP状态代码的异常 (例如, yii\web\NotFoundHttpException意味着一个404 HTTP状态代码)。 Yii 将通过HTTP状态码和文本发送相应的响应。 它还