2014-12-05 33 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='*'无效。