【发布时间】:2013-04-11 12:22:30
【问题描述】:
执行 twitter 查询时,我收到 403 错误,错误消息如下,但是我的其他查询工作正常,并且在此之前执行,任何人都可以在这里发现可能有问题的地方:
推特异常:TwitterException{exceptionCode=[f3acd3ed-00581fa3], statusCode=403, retryAfter=0, rateLimitStatus=null, version=2.1.5-SNAPSHOT(build: d372a51b9b419cbd73d416474f4a855f3e889507)}
当我从我的应用程序执行搜索时会发生这种情况,我没有过度限制,因为我可以完美地执行我的其他搜索,它只是这个,任何帮助将不胜感激,代码如下所示。我使用 Twitter4j 和 Processing 与 controlP5 的组合来处理搜索等输入。
void setup(){
...
cp5.addTextfield("SEARCH")
.setPosition(30,20)
.setSize(100,20)
.setFocus(true)
.setColor(color(255,0,0))
.setGroup(g2)
;
}
public void SEARCH(String theText) {
qm.srch = true;
qm.theText = theText;
qm.userSearch();
qm.srch = false;
// automatically receives results from controller input
println("a textfield event for controller 'input' : "+theText);
}
void userSearch() {
try {
if (srch) {
ConfigurationBuilder cb9 = new ConfigurationBuilder();
cb9.setOAuthConsumerKey("XXXXXXXXXXXXXXXXXXXXXX");
cb9.setOAuthConsumerSecret("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXx");
cb9.setOAuthAccessToken("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");
cb9.setOAuthAccessTokenSecret("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");
println("Connected");
Twitter twitter = new TwitterFactory(cb9.build()).getInstance();
Query srchh = new Query(theText2);
srchh.setRpp(5);
QueryResult srchhRes = twitter.search(srchh);
ArrayList srchhTwe = (ArrayList) srchhRes.getTweets();
for (int i = 0; i < srchhTwe.size(); i++) {
Tweet t = (Tweet) srchhTwe.get(i);
String user = t.getFromUser();
GeoLocation l = t.getGeoLocation();
String locNam = t.getLocation();
String msg = t.getText();
wholeTweetsL.add(msg);
println("\nMessage: " + msg);
println("\nLocation: " + locNam);
}
}
}
catch(TwitterException e) {
println("TWITTER EXCEPTION: " + e);
}
}
【问题讨论】:
标签: twitter processing twitter4j