我想要一些资源,可以让我只捕获特定链接的推文。 假设我将捕获包含链接http://aaa.com的所有推文 我该怎么做 ? 谢谢
答案 0 :(得分:2)
了解Twitter API here,但更好的库是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){ // store accessToken.getToken() // store 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());
}
我希望我能帮忙。
答案 1 :(得分:0)
查看Twitter API。 https://dev.twitter.com/
实际上,这个问题有点过于开放,无法轻易回答。实质上,您将使用API来提取给定的推文,然后使用您自己的一些代码来解析您要检查的URL,然后最终使用URL或推文执行某些操作。
请做一些研究,然后回答一个更具体的问题。