我试图抓住用户输入的某个字/标签的前50条推文的文字。我尝试编写for循环来执行此操作,例如:
for i in range(1,50):
self.status_texts[i] = (statuses[i])
for i in range(1,50):
self.tweets = self.status_texts[i]['text']
但它始终带有KeyError
。我基本上正在寻找一种方法来组合self.status_texts = (statuses[0])
操作和检索文本的操作,当前在返回中。
这可能吗?你们中的任何人都可以给我一些关于从哪里开始的提示吗?
twitter_api = twitter.Twitter(auth=auth)
q = input('What to search for?')
q = str(q)
count = 50
search_results = twitter_api.search.tweets(q=q, count=count)
statuses = search_results['statuses']
f = open('twitter.txt', 'w')
class Tweeter():
def puretweets(self):
self.status_texts = (statuses[0])
self.status_texts1 = (statuses[1])
self.status_texts2 = (statuses[2])
return self.status_texts['text'], self.status_texts1['text'], self.status_texts2['text']
答案 0 :(得分:2)
到目前为止,我想,你想要返回一个包含存储在其中的所有推文文本的元组,这可以很容易地完成:
def puretweets(self):
# self.status_texts = (statuses[0])
# self.status_texts1 = (statuses[1])
# self.status_texts2 = (statuses[2])
return (statuses[i] for i in range(1, 50))
或者只是
def puretweets(self):
return statuses[1:50]