2014-12-05 36 views
3

UPDATE BOTTOM所有鳴叫:的Python tweepy找到問題的荷蘭

我試圖創建生成在荷蘭所有的地理編碼的鳴叫的腳本。我距離那裏很遠。當我與Tweepy玩耍時,我遇到了一個奇怪的情況。我在網上發現了一個腳本,可以搜索包含關鍵字的推文。我試圖添加一個地理編碼的參數檢查。我成功了,底下的腳本起作用了。但是,當我刪除tweepy.Cursos()調用的地理編碼部分時,它不再起作用。所以這個腳本工作:

import tweepy 
import csv 

consumer_key = "???" 
consumer_secret = "???" 
access_token = "???" 
access_token_secret = "???" 

auth = tweepy.auth.OAuthHandler(consumer_key, consumer_secret) 
auth.set_access_token(access_token, access_token_secret) 
api = tweepy.API(auth) 

# Open/Create a file to append data 
csvFile = open('tweets.csv', 'a') 
#Use csv Writer 
csvWriter = csv.writer(csvFile) 

for tweet in tweepy.Cursor(api.search,q="*",count=100,geocode="5.29126,52.132633,150km").items(100): 
    print [tweet.created_at, tweet.text.encode('utf-8'), tweet.user.id, tweet.geo] 
    csvWriter.writerow([tweet.created_at, tweet.text.encode('utf-8'), tweet.user.id]) 

更新! 謝謝你幫助我。現在我還有一個問題想要創建一個腳本來收集在荷蘭的所有地理參考推文。

我的代碼的最後部分應返回荷蘭的所有地理編碼推文,並將其寫入CSV文件。不幸的是,它似乎只採用英語的推文。由於沒有荷蘭語設置,並且荷蘭人也使用英語發送Tweet,所以我不想設置搜索語言。爲什麼只用英語搜索Tweets?我不知道我在哪裏設置搜索的這個特徵。

哦,我轉過了緯度。愚蠢的錯誤。問題得到解答!

+0

你不能只搜索'*'這是一個無效的查詢,即使在twitter本身。 – Ngenator 2014-12-05 16:03:24

+0

有人告訴我,如果你填寫一個明星,它只是搜索一切。它確實與附加的地理編碼一起工作。所以對我來說這似乎不是問題。然而,我可以用不同的字符串測試代碼,並且在我回家時會這樣做 – Zuenie 2014-12-05 16:36:59

+1

我說你不能搜索沒有'geocode'參數的'*',這就是爲什麼當你刪除它時,代碼失敗 – Ngenator 2014-12-05 16:51:25

回答

4

同樣使用geocode參數時,您只能將查詢字符串設置爲'*'。沒有指定geocode的搜索q='*'無效。