2014-02-26 71 views
1

我已經在python中設置了一個代碼來搜索僅使用oauth2和urllib2庫的推文。 (我沒有使用任何特定的推特庫)使用twitter api搜索推文的奇怪問題

我能夠搜索基於關鍵字的推文。然而,當我搜索這個特定的關鍵字 - 「Jurgen%20Mayer-Hermann」時,我得到的推文數量爲零。 (這是挑戰,因爲我的最終目標是隻搜索這個關鍵字

在另一方面,當我在線搜索(Twitter的界面,我得到足夠的微博)同樣的事情 - 。https://twitter.com/search?q=Jurgen%20Mayer-Hermann&src=typd

?可有人請看看我們是否能夠確定問題

的代碼如下:

def getfeed(mystr, tweetcount): 
    url = "https://api.twitter.com/1.1/search/tweets.json?q=" + mystr + "&count=" + tweetcount 
    parameters = [] 
    response = twitterreq(url, "GET", parameters) 
    res = json.load(response) 
    return res 

search_str = "Jurgen Mayer-Hermann" 
search_str = '%22'+search_str+'%22' 
search = search_str.replace(" ","%20") 
search = search.replace("#","%23") 
tweetcount = str(50) 
res = getfeed(search, tweetcount) 

當我打印構造的URL,我得到

https://api.twitter.com/1.1/search/tweets.json?q=%22Jurgen%20Mayer-Hermann%22&count=50 
+0

你可以從這裏得到你的答案。 http://stackoverflow.com/questions/12916539/simplest-php-example-for-retrieving-user-timeline-with-twitter-api-version-1-1 –

回答

0

我實際上從來沒有使用Twitter API,但它看起來像count參數僅適用於searches on timelines,作爲限制每頁結果的推文數量的一種方法。換句話說,您可以將它與GET statuses/home_timeline,GET statuses/mentionsGET statuses/user_timeline端點一起使用。

嘗試沒有count,看看會發生什麼。

+0

感謝您的迴應! (1)我沒有使用任何特殊的Twitter API。我只創建一個搜索網址並執行它來獲取提要。 (2)代碼適用於我試過的所有其他關鍵字,而不是「Jurgen Mayer-Hermann」(3)我刪除了你所提及的計數,並且沒有改變,仍然是相同的問題 – dsauce

0

請使用urllib.urlencode編碼的查詢參數,就像這樣:

import urllib 
query = urllib.urlencode({'q': '"Jurgen Mayer-Hermann"', count: 50}) 

這將產生'q=%22Jurgen+Mayer-Hermann%22&count=50'。這可能會帶給你更多的運氣......

+0

感謝@Menno的回覆。不幸的是,這是行不通的。我犯了同樣的錯誤。任何其他見解? – dsauce

+0

我還檢查了代碼適用於「Jurgen」和「Mayer-Hermann」,但不適用於「Jurgen Mayer-Hermann」。因此,我需要一種讓空間分隔搜索的方法。 – dsauce

+0

這很奇怪......我唯一能想到的是,搜索api可能會返回Twitter搜索的推文的子集? – Menno