使用Python将从Twitter检索到的数据保存到文本文件中?

时间:2012-04-20 13:30:23

标签: python caching twitter

大家好,我目前正在做一些研究,并利用twitter api收集信息。我写了一些代码来查询python中的特定推文,并希望将结果保存到文本文件,但我的代码只返回返回的推文的最后一条推文,任何人都可以告诉我如何纠正这个和什么'错了? 以下是我在Python中的代码示例,仅保存最后一条推文而不是所有返回的推文:

u = urllib2.urlopen('http://search.twitter.com/search.json?geocode=29.762778,-95.383056,10.0mi&page=1&rpp=10')
datares = json.load(u)
pprint.pprint(datares)
for tweet in datares['results']:
  print tweet['text']
  archive=tweet['text']
  unicodedata.normalize('NFKD', archive).encode('ascii','ignore')
  with codecs.open('HTXtweets.txt',mode='w', encoding='utf-8',errors='replace') as cache:
    cache.write(archive)
    cache.closed

2 个答案:

答案 0 :(得分:1)

您将在循环的每次迭代中打开文件。每次都会从头开始重新创建它。

你应该在循环之前打开它 - 你不需要在结束时关闭它,因为当with语句结束时它会自动发生。

答案 1 :(得分:0)

原因是您在每次迭代中打开文件进行写入。这将替换文件中的现有内容。在打开文件时,请尝试使用标记'a'(如附加内容)。