2010-04-21 62 views
3

我已經實現了一種手動刮取搜索Twitter頁面並在不同頁面上獲取推文的方法。 但是由於存在快速刷新率,該方法會觸發異常。 因此,我決定用TweetSharp API代替獲取使用TweetSharpAPI的所有用戶的推文

var search = FluentTwitter.CreateRequest() 
          .AuthenticateAs(TWITTER_USERNAME, TWITTER_PASSWORD) 
          .Users() 
          .SearchFor("dumbledore"); 

var result = search.Request(); 
var users = result.AsUsers(); 

該代碼是在網站上。 有誰知道我可以如何避免給我的憑據,並從所有用戶檢索,而不僅僅是我作爲朋友?

謝謝!

+0

我假設你是指所有* public * feeds?這裏可能存在一些隱私問題,這會妨礙此功能的可用性。 – 2010-04-21 19:15:09

+0

是公共飼料 – Lilz 2010-04-21 19:16:09

回答

0

你想要做的是與Twitter Streaming API接口。該API允許你打開與Twitter的持久連接,然後Twitter將流導致到你,因爲他們進來,

Twitter Streaming API diagram

(從Twitter的流API頁面獲取)

這就是說,TweetSharp目前不支持Streaming API。但是,open a connection to Twitter in .NET and process the responses as they're received並不困難(但是,我建議使用HttpClient class來異步處理此內容,並使用適當的JSON解析庫,如Json.NET)。

注意在圖「流式連接過程」的第三列,特別是中間部分:

可以接收流式傳輸的鳴叫,執行處理,並將結果保存

正如以及「HTTP服務器進程「列:

服務器從數據存儲中提取處理結果並呈現視圖。

雖然沒有明確提到,但您最好只是堅持Tweet,因爲您將它置入數據存儲區,然後讓另一個進程處理Tweets;您可能會收到的Tweets數量太高,以至於在您收到Tweet時會執行任何處理,將會收到新的Tweets。

對於您的具體情況,您需要訪問Public Streams,其中POST filter爲「dumbledore」。

+0

有沒有什麼可以在這裏完成的答案?它不是直接解決OP所要求的,還是我錯過了什麼? – casperOne 2012-08-08 18:48:26

相關問題