使用python获取推文的转推

时间:2017-05-02 15:06:25

标签: python-2.7 api twitter tweets

我必须获取推文的转推,并使用python脚本创建带转发,用户ID等的JSON文件。请帮助我解决这个问题。

提前致谢!!

1 个答案:

答案 0 :(得分:0)

这项任务需要一些知识领域,而且由于你以一般方式提问,我认为你需要一个立即运行的脚本,但是设置这个过程需要一段时间

此部分用于连接到twitter API

from twython import Twython, TwythonError

APP_KEY = 'YOUR_APP_KEY'
APP_SECRET = 'YOUR_APP_SECRET'

twitter = Twython(APP_KEY, APP_SECRET)

使用来自Twython的Twitter API调用,

你可以在这里找到一个列表https://twython.readthedocs.io/en/latest/api.html,该参数与twitter API相同

response = twitter.get_retweets(id, 100)

Pagnation

对API的每次调用都有返回限制,例如对于engine.get_friends_ids限制为5000(https://dev.twitter.com/rest/reference/get/friends/ids),如果要获得超过5000,则必须在返回的结果中使用游标(如果在json返回时cur = 0意味着没有更多结果),以下是如何处理游标

的示例
#Set a temp to loop    
cur = -1

#Stop when no more result
while cur !=0:
    response = twitter.get_friends_ids(user_id=user_id, cursor=cur)

    #Some code to handle the response

    cur = response["next_cursor"]

API密钥

密钥在一些调用(https://dev.twitter.com/rest/public/rate-limits)后到期,因此您需要设置一些代码以自动更改密钥,或等待一段时间(密钥达到限制返回错误代码429)

响应

API的响应采用JSON格式,易于使用,您可以通过选择基于响应[key]来访问数据,例如 响应[" ids"]或回复[" next_cursor"]