你怎么在推特中提到特定网址的所有推文?

时间:2010-02-26 09:38:40

标签: twitter

我基本上想知道我是否可以搜索所有关于网址的推文,例如http://twitter.com/blah。理想情况下,搜索也应该计算缩短的URL。有什么指针吗?

4 个答案:

答案 0 :(得分:4)

http://backtweets.com/

这项服务显然能够搜索缩短的网址。

答案 1 :(得分:1)

您可能需要查看包含Twitter API Documentation方法的search文档。

你的搜索缩短网址的请求很奇怪 - 我理解你为什么要这样做但我无法想象你认为它可能有用。由于Twitter本身不包含短URL的扩展版本,因此没有任何方法可以使用Twitter搜索功能来查找缩短的链接。由于您无法预测人们可能会使用哪种缩短的网址,因此无论如何都不会知道要查找的内容。

答案 2 :(得分:1)

答案 3 :(得分:0)

我建议您只使用Twitter Key / Word作为提交搜索的密钥。在我创建的JS Fiddle中,您将看到我如何从趋势区域设置调用中生成的趋势主题中提取“查询关键字”。我从本地结果中获取了雅虎WOEID,并使用该特定地理区域产生的本地趋势。从那里开始,趋势推文都有一个“查询字符串”,可以捕获并添加到Twitter搜索paramas对象中,该对象将在该趋势本地内针对该趋势主题发布推文。我真的希望这会有所帮助,因为我把它写成了一个直截了当的Jquery。享受。

嘿伙计们,我把一个很好的JS小提琴放在一起,在处理Twitter API时应该回答你所有的问题。 webapp抓取趋势区域设置,并允许您深入查看趋势主题,然后查看其中的推文。

我还包括一个标准的Twitter搜索提交框,所以以一种奇怪的方式,这是一个准系统的Tweetdeck客户端供您检查。另外,为了推动新Jquery库的改编,我使用了1.91来实现新的live.bind点击事件语法。

享受

http://jsfiddle.net/jdrefahl/5M3Gn/

function searchTwitter(query) {
$.ajax({
    url: 'http://search.twitter.com/search.json?' + jQuery.param(query),
    dataType: 'jsonp',
    success: function (data) {
        var tweets = $('#tweets');
        tweets.html('');
        for (res in data['results']) {
            tweets.append('<div>' + data['results'][res]['from_user'] + ' wrote: <p>' + data['results'][res]['text'] + '</p></div><br />');
        }
    }
});

}

$(document).ready(function(){

function getTrendsByID(id) {
    $.ajax({
        url: 'http://api.twitter.com/1/trends/' + id + '.json',
        dataType: 'jsonp',
        success: function (data) {
            $.each(data[0].trends, function (i) {
            });
        }
    });
};

function getLocales() {
    $.ajax({
        url: 'https://api.twitter.com/1/trends/available.json',
        dataType: 'jsonp',
        success: function (data) {
            var locales = $('ul#locales');
            locales.html('');
            $.each(data, function (i) {
                localeID[i] = data[i].woeid;
                $('ul#locales').append('<li>' + data[i].name + '</li>');
            });
        }
    });

};

function getTrends(id) {
    $.ajax({
        url: 'https://api.twitter.com/1/trends/' + id + '.json',
        dataType: 'jsonp',
        success: function (data) {
            var trends = $('ul#currentTrends');
            trends.html('');
            $.each(data[0].trends, function (i) {
                $('ul#currentTrends').append('<li>' + data[0].trends[i].name + '</li>');
            });
        }
    });
};

// Event Handlers
$(document).on("click", "#locales li", function () {
    var $this = $(this);
    var localesHdr = $('#currentTrendsCont h3');
    var tweets = $('#tweets');
    var trendsHdr = $('#tweetsCont h3');
    trendsHdr.html('');
    tweets.html('');
    localesHdr.html('');
    $('#currentTrendsCont h3').html($this.text());
    getTrends(localeID[$this.index()]);
});

$(document).on("click", "#currentTrends li", function () {
    var $this = $(this);
    var trendsHdr = $('#tweetsCont h3');
    trendsHdr.html('');
    $('#tweetsCont h3').html($this.text());
    var params = {
        q: $this.text(),
        rpp: 10
    };
    searchTwitter(params);
});

$('#submit').click(function () {
    var trendsHdr = $('#tweetsCont h3');
    var trends = $('#currentTrends');
    var local = $('#currentTrendsCont h3');
    local.html('');
    trendsHdr.html('');
    trends.html('');
    $('#tweetsCont h3').html('search query: '+$('#query').val());
    var params = {
        q: $('#query').val(),
        rpp: 10
    };
    searchTwitter(params);
});

// Globals
var localeID = new Array();

// Init!
getLocales();

});