返回tweepy中的实际tweets?

2024-05-18 09:40:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我在用tweepy写twitter程序。当我运行这段代码时,它会打印出Python。。。他们的价值观,比如

<tweepy.models.Status object at 0x95ff8cc>

这不好。我怎样才能得到真正的tweet?

import tweepy, tweepy.api
key = XXXXX
sec = XXXXX

tok  = XXXXX
tsec = XXXXX

auth = tweepy.OAuthHandler(key, sec)
auth.set_access_token(tok, tsec)
api = tweepy.API(auth)

pub = api.home_timeline()
for i in pub:
        print str(i)

Tags: key代码程序authapimodelsstatustwitter
3条回答

查看可用于检查返回对象的get方法

for i in pub:
    print i.__getstate__()

api.home_timeline()方法返回20个tweepy.models.Status对象的列表,这些对象对应于前20条tweets。也就是说,每个Tweet都被视为Status类的对象。每个状态对象都有许多属性,如id、文本、用户、位置、创建位置等

以下代码将打印tweet id和文本:

tweets = api.home_timeline()
for tweet in tweets:
  print tweet.id, " : ", tweet.text

通常,您可以使用Python中的dir()内置来检查对象。

看起来Tweepy文档在这里非常缺乏,但是我可以想象Status对象反映了Twitter的REST状态格式的结构,请参见(例如)https://dev.twitter.com/docs/api/1/get/statuses/home_timeline

所以——试试

print dir(status)

查看status对象中的内容

或者说

print status.text
print status.user.screen_name

相关问题 更多 >