यदि आप कुछ कोडिंग करने के लिए तैयार हैं, तो यहां बताया गया है कि यह जावा में कैसे काम करेगा ...
package twitone;
import java.util.ArrayList;
import java.util.Map;
import twitone.structure.BaseTwitterClass;
import twitone.structure.TwitApplicationFactory;
import twitter4j.Paging;
import twitter4j.RateLimitStatus;
import twitter4j.Status;
import twitter4j.Twitter;
import twitter4j.TwitterException;
public class MyRetweeters extends BaseTwitterClass {
private Twitter twitter;
public MyRetweeters(Twitter twitter) {
this.twitter = twitter;
}
public static void main(String[] args) throws TwitterException {
Twitter twitter = TwitApplicationFactory.getjoereddingtonTwitter();
MyRetweeters unit = new MyRetweeters(twitter);
String temp[] = unit.get();
for (String string : temp) {
System.out.println(string);
}
}
public String[] get() {
ArrayList<String> names = new ArrayList<String>();
try {
for (Status status : twitter.getUserTimeline(new Paging(1, 200))) {
System.out.println(status.getText());
if (status.getText().startsWith("RT")) {
// skip
} else if (status.getRetweetCount() > 0) {
// Because I don't want to breach
// Twitter's rate limits
// okay the below has been added to keep within the rate
// limited.
waitUntilICanMakeAnotherCall();
// end keeping within rate limit code.
for (Status rt : twitter.getRetweets(status.getId())) {
names.add(rt.getUser().getScreenName());
System.out.println("---"+rt.getUser().getScreenName());
}
}
}
} catch (TwitterException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
return names.toArray(new String[names.size()]);
}
/**
* @throws TwitterException
* @throws InterruptedException
*/
protected void waitUntilICanMakeAnotherCall() throws TwitterException, InterruptedException {
{
Map<String, RateLimitStatus> temp = twitter.getRateLimitStatus();
RateLimitStatus temp2 = temp.get("/statuses/retweets/:id");
System.out.println(temp2.getRemaining());
if (temp2.getRemaining() == 0) {
Thread.sleep((temp2.getSecondsUntilReset() + 5) * 1000);
return;
}
System.out.println(temp2.getSecondsUntilReset());
int secondstosleep =1+ temp2.getSecondsUntilReset() / temp2.getRemaining();
System.out.println(secondstosleep);
Thread.sleep(secondstosleep * 1000);
}
}
}
यह कोड आपके द्वारा हाल ही में किए गए हर ट्वीट को प्रिंट कर लेगा, साथ ही इसे रीट्वीट करने वाले लोगों की आईडी भी। नोट करने के लिए त्वरित चीजों की एक जोड़ी - ज्यादातर है कि इस लाइन:
Twitter twitter = TwitApplicationFactory.getjoereddingtonTwitter();
आपके लिए काम नहीं करेगा - कि मुझे अपनी एपीआई कुंजी मिल रही है और इसी तरह, आपको अपना खुद का लिखना होगा ...