将几条推文放入数据框中

Putting several tweets in dataframe

我正在尝试下载 BarackObama 的最后 10 条推文。但是,当我尝试将它们放入数据框中时,它只包含第 10 条推文(因此只有 1 条)。有人知道如何解决这个问题吗?我先用打印而不是数据尝试了代码的顶部,然后我得到了所有 10 条推文,所以我不知道哪里出了问题。我也没有收到错误消息。

user = 'BarackObama' 
posts = tweepy.Cursor(api.user_timeline, screen_name=user,).items(10)

for status in posts:
  if status.lang == 'en':
    data = {'User': [status.user.name],
        'Account name' ['@'+status.user.screen_name], 
        'Tweet': [status.text], 
        'Time': [status.created_at],
        'Nr of retweets': [status.retweet_count],
        'Nr of favorited': [status.favorite_count]}

df = pd.DataFrame(data)
   
df.head()

看来你必须创建一个 list 推文,然后将它们放入 DataFrame:

user = 'BarackObama' 
posts = tweepy.Cursor(api.user_timeline, screen_name=user,).items(10)
tweets = []

for status in posts:
  if status.lang == 'en':
    data = {'User': [status.user.name],
        'Account name' ['@'+status.user.screen_name], 
        'Tweet': [status.text], 
        'Time': [status.created_at],
        'Nr of retweets': [status.retweet_count],
        'Nr of favorited': [status.favorite_count]}
    tweets.append(data)

df = pd.DataFrame(tweets)
   
df.head()