2011-03-13 13 views
6

के साथ सभी ट्वीट प्राप्त करें मैं ट्विटर एपीआई के साथ प्रयोग कर रहा हूं क्योंकि मैं एक विशेष पृष्ठ पर ट्वीट्स की कुछ सूचियों को प्रदर्शित करना चाहता हूं।विशिष्ट हैशटैग

उन सूचियों के अलावा सभी ट्वीट्स एक विशिष्ट हैशटैग युक्त साथ एक सूची है (उदाहरण के लिए #test)

हालांकि मैं कैसे या तो XML या JSON (अधिमानतः उत्तरार्द्ध) में है कि सूची प्राप्त करने नहीं मिल रहा है, किसी को पता है कि कैसे? यह भी ठीक है अगर यह TweetSharp

उत्तर

7

में किया जा सकता आप बस http://search.twitter.com/search.json?q=%23test लाने JSON, जहां %23test#test यूआरएल इनकोडिंग है में #test युक्त ट्वीट्स की एक सूची प्राप्त करने कर सकते हैं।

मैं TweetSharp से परिचित नहीं हूं, लेकिन मुझे लगता है कि search कमांड होना चाहिए जिसका उपयोग आप #test के लिए खोज सकते हैं, और उसके परिणामस्वरूप ट्वीट्स को JSON में बदल सकते हैं।

+0

बहुत खराब सेवा (search.twitter.com) नीचे अक्सर :( हो रहा है वहाँ यह नहीं रह गया काम कर रहा है – dtech

+13

उपयोग कर किसी भी विकल्प है ** आईटी कोई लंबा काम नहीं ... यहां अपना समय बर्बाद न करें ** –

+1

api.twitter.com –

9

पहले GitHub https://github.com/danielcrenna/tweetsharp

यहाँ कोड का उपयोग कर रहा है खोज करना TweetSharp स्थापित

TwitterService service = new TwitterService(); 
var tweets = service.Search("#Test", 100); 
List<TwitterSearchStatus> resultList = new List<TwitterSearchStatus>(tweets.Statuses);  

आप अधिक एक पृष्ठ परिणाम तो आप एक पाश सेटअप कर सकते हैं और प्रत्येक पृष्ठ

फोन है, तो
service.Search("#Test", i += 1, 100); 
+0

लूप कैसे अधिक से अधिक के लिए काम करेगा एक पेज? –

+0

लिंक काम नहीं करता है – gonephishing

4

ऐसा लगता है कि पिछले कुछ महीनों से एपीआई में कोई बदलाव आया है। यहां अपडेट किया गया कोड है:

TwitterSearchResult res = twitter.Search(new SearchOptions { Q = "xbox" }); 
IEnumerable<TwitterStatus> status = res.Statuses; 
0

मैं एक ही समस्या के साथ संघर्ष किया। यहां मेरा अस्पष्ट समाधान है। प्रोग्रामिंग का आनंद लें। जब भी आपकी आवश्यक संख्या में ट्वीट प्राप्त/प्राप्त किए जाते हैं तो यह फ़ंक्शन से बाहर हो जाएगा।

 string maxid = "1000000000000"; // dummy value 
     int tweetcount = 0; 


     if (maxid != null) 
     { 
      var tweets_search = twitterService.Search(new SearchOptions { Q = keyword, Count = Convert.ToInt32(count) }); 
      List<TwitterStatus> resultList = new List<TwitterStatus>(tweets_search.Statuses); 
      maxid = resultList.Last().IdStr; 
      foreach (var tweet in tweets_search.Statuses) 
      { 
       try 
       { 
        ResultSearch.Add(new KeyValuePair<String, String>(tweet.Id.ToString(), tweet.Text)); 
        tweetcount++; 
       } 
       catch { } 
      } 

      while (maxid != null && tweetcount < Convert.ToInt32(count)) 
      { 
       maxid = resultList.Last().IdStr; 
       tweets_search = twitterService.Search(new SearchOptions { Q = keyword, Count = Convert.ToInt32(count), MaxId = Convert.ToInt64(maxid) }); 
       resultList = new List<TwitterStatus>(tweets_search.Statuses); 
       foreach (var tweet in tweets_search.Statuses) 
       { 
        try 
        { 
         ResultSearch.Add(new KeyValuePair<String, String>(tweet.Id.ToString(), tweet.Text)); 
         tweetcount++; 
        } 
        catch { } 
       } 

}

संबंधित मुद्दे