关于如何获得一个推特开发者账号请看此贴:
推特开发者账号的申请
或
搜索微信公众号 twitterDeveloper 获得帮助
一个正常的推文界面如下图:
从左到右依次是:评论(回复)数量、转发数量、喜欢数量。
其中,转发数量和喜欢数量都有自己的字段,可以通过twitter api获取到。
想要获得某个推文的回复数量,只能使用推特高级api,普通的api是没有权限获取的,但是推特高级api的价格特别贵,这里有一种方法可以间接取到某个推文的回复数量。
直接上代码:
import tweepyfrom tweepy import OAuthHandlerconsumer_key="XXXXXX"consumer_secret="YYYYYY"access_token="ZZZZZZ"access_secret="DDDDDD"auth = OAuthHandler(consumer_key,consumer_secret)auth.set_access_token(access_token,access_secret)api = tweepy.API(auth)user = 'H_KANNA_0203'tweet_id = '1378333660915539971'cc = 'to:{}'.format(user)t = api.search(q=cc, since_id=tweet_id)replies = 0for i in range(len(t)):print(t[i].in_reply_to_status_id)if str(t[i].in_reply_to_status_id) == tweet_id:replies += 1print(replies)
运行结果为:
但是图中评论数量是606,与其严重不符,这是受到了普通api的限制,只能获取邻近时间的评论数量,而不是所有时间的。
下面换一个推文再测一下:
这个推文现在是0评论,我们评论两次测试一下。
程序运行结果如下:
可以发现成功的获取到评论数量。