如何通过Tweepy / TwitterAPI吸引用户朋友的朋友,而又不给速率限制增加太多负担?

问题描述

我正在使用tweepy API,并且制作了一种方法来获取用户的关注者(又名“朋友”)。

    def get_following(self,name=''):
        client = self.twitter_client
        following_results = tweepy.Cursor(client.friends,screen_name=name,count=200).pages()
        i = 0
        # Each page returns a list of what you requested (in this case: users).
        for list_of_users in following_results:
            for user in list_of_users:
                 # do something with the user

我正在尝试构建一个简单的程序,将用户的朋友作为朋友。

输入用户->检索该用户的朋友-> 为输入用户的每个朋友获得其朋友列表(最终目标)。

编写逻辑以获取此数据不是问题。

我对速率限制有很大的疑问。使用您在方法中输入的第一个用户就可以了。我在有500个朋友并使用tweepy rate_limit_status()的用户上测试了上述方法,按预期,这15个朋友的请求下降了3到12个请求(最大计数为200,因此是分页的3倍),但是假设该用户的下四个朋友也有500个关注者,我每15分钟只能请求5个用户(这包括第一次迭代中输入的用户)。因此,假设此用户的每个朋友也有500个朋友(可能不会更多),将需要一百个(5个请求/ 15分钟的会话* 100 =所有500个原始用户的朋友)15分钟的会话来获取所有朋友原始用户的朋友(25小时)。

这是一个很长的时间,我检查了Stack溢出和tweepy / twitter API文档来解决这个难题,但我还没有真正找到任何东西,所以我不妨在这里提出。我试图使它成为一个易于使用的程序,在其中可以键入任何用户名,并且获得用户朋友的朋友的输出,但是对于单个用户而言,这已经是时间上的挑战。

使用当前的15个好友请求/ 15分钟的Twitter速率限制,是否有可能解决?

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...