在java中运行tweets提取程序,只提供twitter4j的版本
当我在eclipse上运行java程序以提取特定标签上的推文时,我得到的只是twitter4j的版本。问题可能很小,但我弄错了。因此,请帮助我找到哪里出错了。提前感谢在java中运行tweets提取程序,只提供twitter4j的版本,java,twitter4j,tweets,Java,Twitter4j,Tweets,当我在eclipse上运行java程序以提取特定标签上的推文时,我得到的只是twitter4j的版本。问题可能很小,但我弄错了。因此,请帮助我找到哪里出错了。提前感谢 package twitter; import java.io.PrintWriter; import java.util.ArrayList; import java.util.List; import twitter4j.GeoLocation; import twitter4j.Query; import twitter4j
package twitter;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
import twitter4j.GeoLocation;
import twitter4j.Query;
import twitter4j.QueryResult;
import twitter4j.Status;
import twitter4j.Twitter;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;
import twitter4j.conf.ConfigurationBuilder;
public class tweets
{
public static void main(String[] args) throws Exception
{
ConfigurationBuilder cb = new ConfigurationBuilder();
cb.setDebugEnabled(true)
.setOAuthConsumerKey("boWrbNOkE1uYoIAiopDncABrA")
.setOAuthConsumerSecret("X7kwndg0BlJhL3qayHfbPnD87bRrP89XLbyHpN607k9Kjuof51")
.setOAuthAccessToken("154519213-pZsiUD4GJbB4w7qyRC9r6ArQhFzCIKdH3BWIBtJI")
.setOAuthAccessTokenSecret("RQX9NWkGaglNg68P7fDS68rD8v5nfLcSzn5KHwDMO5h0H");
Twitter twitter = new TwitterFactory(cb.build()).getInstance();
Query query = new Query("#world");
int numberOfTweets = 5000;
long lastID = Long.MAX_VALUE;
ArrayList<Status> tweets = new ArrayList<Status>();
while (tweets.size () < numberOfTweets) {
if (numberOfTweets - tweets.size() > 100)
query.setCount(100);
else
query.setCount(numberOfTweets - tweets.size());
try {
QueryResult result = twitter.search(query);
tweets.addAll(result.getTweets());
System.out.println("Gathered " + tweets.size() + " tweets"+"\n");
for (Status t: tweets)
if(t.getId() < lastID)
lastID = t.getId();
}
catch (TwitterException te) {
System.out.println("Couldn't connect: " + te);
};
query.setMaxId(lastID-1);
}
for (int i = 0; i < tweets.size(); i++) {
Status t = (Status) tweets.get(i);
// GeoLocation loc = t.getGeoLocation();
String user = t.getUser().getScreenName();
String msg = t.getText();
//String time = "";
//if (loc!=null) {
//Double lat = t.getGeoLocation().getLatitude();
//Double lon = t.getGeoLocation().getLongitude();*/
System.out. println(i + " USER: " + user + " wrote: " + msg + "\n");
}
//else
//System.out.println(i + " USER: " + user + " wrote: " + msg+"\n");
}
}
我认为你不应该在SOyeah上分享你的OAuth详细信息,我的应用程序只是一个测试应用程序,我会删除它。顺便说一句,我会处理好的。谢谢你,先生。你是如何在Eclipse中运行这个的?你的跑步配置是什么?它是否在twitter4j的jar文件中执行一个main来打印它的版本?