【问题标题】:tweepy Status object (tweet) has no attribute .texttweepy 状态对象(tweet)没有属性 .text
【发布时间】:2022-01-18 16:43:24
【问题描述】:

使用 Tweepy Python 库,我连接了 Twitter 帐户的凭据并流式传输与感兴趣的术语相关的实时推文,然后,我想将它们保存到 .txt 文件中。

然后我想将我们收集的所有数据读入 pandas DataFrame

请问我该怎么做。

这是我的代码:

cursor = tweepy.Cursor(api.user_timeline, id='CarrefourFrance',tweet_mode='extended').items(33)

with open('t.txt', 'w') as f:
    for tweet in cursor:
        try:
            f.write('{}\n'.format(tweet.text.encode("utf-8")))
        except UnicodeEncodeError as e:
            print(e)

这是错误:AttributeError: 'Status' object has no attribute 'text'

【问题讨论】:

  • 是什么让你认为每条推文(Status 对象)都应该有一个属性.text? (以及为什么在不使用io 的时候导入它?)
  • io 来自之前复制的代码,我刚刚在这里找到了这个,我刚刚试了一下
  • 其实这很奇怪:一个 .text 属性应该存在于文档的快速浏览中。在print(e) 之前添加print(dir(tweet), tweet) 并查看失败案例。

标签: python tweepy tweets


【解决方案1】:

也许您应该尝试将tweet.text 更改为tweet.full_text

或者是这样的:

results = api.search(q=query, lang=language, count=tweetCount, tweet_mode='extended')
for tweet in results:
        print(tweet.full_text)

供参考:https://github.com/tweepy/tweepy/issues/878

查看documentation 了解扩展模式:

使用扩展模式时,tweepy.API 方法返回的 Status 对象的 text 属性被替换为 full_text 属性,其中包含 Tweet 的整个未截断文本。

【讨论】:

  • 我不使用这些库,但看一下文档表明它可能是full_text ?
  • 首先,非常感谢您回答我...但它给了我这个错误:AttributeError: 'Status' object has no attribute 'tweet'
  • thaaaaaaank 你这么好用...但是现在如何用 pandas 阅读它...抱歉重新检查
  • Pandas 主要使用.csv 文件,而您正试图将其保存在.txt 文件中,也许您应该实现不同的想法。
  • csv 只是一个用逗号分隔字段的文本文件,完全可以将文件逐行读取到 pandas df 中(每列一个条目)。但这确实是一个单独的问题,@tous 最好按照教程进行操作,或者如果出现问题,请尝试并返回。请注意,如果在您的情况下更有意义的话,没有什么能阻止您将推文直接粘贴到 df 中:dfs 只是对象,您可以简单地添加行。
猜你喜欢
  • 1970-01-01
  • 2022-08-06
  • 2017-06-14
  • 2022-06-12
  • 2017-04-19
  • 2021-02-27
  • 1970-01-01
  • 1970-01-01
  • 2021-11-25
相关资源
最近更新 更多