无法获取有关Python的任何数据

时间:2017-11-21 13:13:30

标签: python json twitter

我收集了很多推文。然后我想只输出英文推文。我可以得到所有的推文包括非英语推文。但是,如果我附加一些代码for i in range (0,1000): if tweet['statuses'][i][u'lang']==u'en':来获取英文推文,就不能像那样收集它。而且没有错误。

In [1]: runfile('C:/Users/Desktop/tweets.py', wdir='C:/Users/Desktop')

它只是运行而且那里("C:/Users/Desktop/A.txt")没有数据。我的代码如下。我该怎么办呢?

try:
    import json
except ImportError:
    import simplejson as json

tweets_filename = 'C:/Users/Desktop/tweet.txt' #Original tweet
tweets_file = open(tweets_filename, "r")

for line in tweets_file:
    try:
        tweet = json.loads(line.strip())
        for i in range (0,1000): #This is the part for filtering English tweet
            if tweet['statuses'][i][u'lang']==u'en': #Same part
                if 'text' in tweet: 
                    print (tweet['created_at']) 
                    print (tweet['text']) 
                    hashtags = []
                    for hashtag in tweet['entities']['hashtags']:
                        hashtags.append(hashtag['text'])
                        print(hashtags)

                    output = "C:/Users/Desktop/A.txt" #Only English tweet path
                    out_file = open(output, 'a')
                    out_file.write(tweet['user']['name'] + "," + tweet['text'] + "\n \n")
                    out_file.close()

except:
    continue

1 个答案:

答案 0 :(得分:0)

您必须阅读tweet_file的行,就像这样;

lines = tweet_file.readlines()

for line in lines:
    ...

另外,如果您想查看错误。不要抓住他们。一些好的阅读Zen of Python