twitter4j:如何使用锚点来获取有关哈希标记和网址的推文文本

时间:2011-03-28 06:51:38

标签: java twitter twitter4j

我使用twitter4j搜索和显示推文。这是代码段

Query query = new Query(queryString);
                QueryResult result = twitter.search(query);

                for (Tweet tweet : result.getTweets()) {
                    System.out.pritnln(tweet.getFromUser() + ":" + tweet.getText());
                }

这里tweet.getText()返回没有锚标记的纯文本(纯文本而不是html),即使它有某个网站的主题标签和网址。如何在Twitter上的Twitter搜索结果中看到带有锚标签的Twitter文本?

2 个答案:

答案 0 :(得分:3)

您需要使用EntitySupport方法从每条推文中获取主题标签和网址。 URLEntityHashtagEntity类都有方法可以告诉您实体在推文文本中的开始和结束位置,因此您可以在显示推文时使用该信息插入链接标记。

从最近的推文中提取网址的示例代码:

Twitter twitter = new TwitterFactory().getInstance();
Query query = new Query("lizardbill");
QueryResult result = twitter.search(query);

for (Tweet tweet : result.getTweets()) {
    System.out.println(tweet.getFromUser() + ":" + tweet.getText());
    for (URLEntity urle : tweet.getURLEntities()) {
        System.out.println(urle.getDisplayURL());
    }
}

答案 1 :(得分:0)

使用twitter-text-java。它与Twitter使用的语法相同。