这是我当前的代码
from twitter import *
t = Twitter(auth=OAuth(TWITTER_CONSUMER_KEY, TWITTER_CONSUMER_SECRET,
ACCESS_TOKEN, ACCESS_TOKEN_SECRET))
t.statuses.home_timeline()
query=raw_input("enter the query \n")
data = t.search.tweets(q=query)
for i in range (0,1000):
print data['statuses'][i]['text']
print '\n'
在这里,我从所有语言中获取推文。有没有办法限制我只获取英文推文?
最佳答案
至少有 4 种方式……我按照简单的顺序排列它们。
收集推文后,json 输出有一个标识语言的键/值对。因此,您可以使用类似这样的方法获取所有语言的推文,并仅选择来自英语帐户的推文。
for i in range (0,1000): if data['statuses'][i][u'lang']==u'en': print data['statuses'][i]['text'] print '\n'
另一种仅收集以英文标识的推文的方法,您可以使用可选的“lang”参数从 API 请求仅英文( self 标识)推文。查看详情 here .如果您使用 python-twitter库,您可以在 twitter.py 中设置“lang”参数.
使用像guess-language这样的语言识别包.
或者,如果您想在不使用 self 识别的推特数据(即用英语写作的中文帐户)的情况下识别英文文本,那么您必须进行自然语言处理。 One option .此方法将识别常见的英文单词,然后将文本标记为英文。
关于python - 如何使用python单独获取英文推文?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20579745/