我想要一些资源,它可以引导我捕获仅针对特定链接的推文。假设我将捕获所有包含链接http://aaa.com的推文, 我该怎么做?谢谢
问问题
723 次
2 回答
2
在此处阅读有关 Twitter API的信息,但更好的库是Twitter4J。
在这里,您有代码示例:
添加新推文:
Twitter twitter = TwitterFactory.getSingleton(); Status status = twitter.updateStatus(latestStatus); System.out.println("Successfully updated the status to [" + status.getText() + "].");
获取时间线:
Twitter twitter = TwitterFactory.getSingleton(); List<Status> statuses = twitter.getHomeTimeline(); System.out.println("Showing home timeline."); for (Status status : statuses) { System.out.println(status.getUser().getName() + ":" + status.getText()); }
使用 OAuth 登录 Twitter(Java 代码,编辑它):
Twitter twitter = TwitterFactory.getSingleton(); twitter.setOAuthConsumer("[consumer key]", "[consumer secret]"); RequestToken requestToken = twitter.getOAuthRequestToken(); AccessToken accessToken = null; BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); while (null == accessToken) { System.out.println("Open the following URL and grant access to your account:"); System.out.println(requestToken.getAuthorizationURL()); System.out.print("Enter the PIN(if aviailable) or just hit enter.[PIN]:"); String pin = br.readLine(); try{ if(pin.length() > 0){ accessToken = twitter.getOAuthAccessToken(requestToken, pin); }else{ accessToken = twitter.getOAuthAccessToken(); } } catch (TwitterException te) { if(401 == te.getStatusCode()){ System.out.println("Unable to get the access token."); }else{ te.printStackTrace(); } } } //persist to the accessToken for future reference. storeAccessToken(twitter.verifyCredentials().getId() , accessToken); Status status = twitter.updateStatus(args[0]); System.out.println("Successfully updated the status to [" + status.getText() + "]."); System.exit(0);
}
private static void storeAccessToken(int useId, AccessToken accessToken){ //存储 accessToken.getToken() //存储 accessToken.getTokenSecret()
获取推文:
Twitter twitter = TwitterFactory.getSingleton(); Query query = new Query("source:twitter4j yusukey"); QueryResult result = twitter.search(query); for (Status status : result.getStatuses()) { System.out.println("@" + status.getUser().getScreenName() + ":" + status.getText()); }
我希望我有所帮助。
于 2013-01-28T15:44:54.127 回答
0
看看 Twitter API。https://dev.twitter.com/
事实上,这个问题有点过于开放,无法轻易回答。本质上,您将使用 API 来拉取给定的推文,然后使用您自己的一些代码来解析您想要检查的 URL,然后最后对 URL 或推文做一些事情。
请做一些研究,然后再提出一个更具体的问题。
于 2013-01-28T15:34:30.263 回答