Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
已达到Python Tweepy速率限制_Python_Tweepy - Fatal编程技术网

已达到Python Tweepy速率限制

已达到Python Tweepy速率限制,python,tweepy,Python,Tweepy,我目前正在做一个推特刮板,我想得到所有推特与多个标签。问题是每次我试图通过第一个hashtag时都会收到429个错误。我尝试过休眠函数,但每次第二个标签出现时,它都不起作用 import tweepy import time import json from collections import defaultdict as dd f = open("tokens.txt", 'r') consumer_key = f.readline().strip() consumer_secret =

我目前正在做一个推特刮板,我想得到所有推特与多个标签。问题是每次我试图通过第一个hashtag时都会收到429个错误。我尝试过休眠函数,但每次第二个标签出现时,它都不起作用

import tweepy
import time
import json
from collections import defaultdict as dd

f = open("tokens.txt", 'r')
consumer_key = f.readline().strip()
consumer_secret = f.readline().strip()
app_key = f.readline().strip()
app_secret = f.readline().strip()

auth =tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(app_key,app_secret)

api = tweepy.API(auth,wait_on_rate_limit=True,wait_on_rate_limit_notify=True)



usercount = dd(int)
userfollowers = dd(int)
mostretweets = dd(int)
mostfav = dd(int)

hashtag = ['#csforall','#equality']
for i in hashtag :
    for status in tweepy.Cursor(api.search, q=i,since="2017-02-25",until="2017-02-28",lang="en").items():
        parsed = status._json
        usercount[parsed['user']['name'].encode("utf-8")]+=1
        userfollowers[parsed['user']['name'].encode("utf-8")]= parsed['user']['followers_count']
        mostretweets[parsed['text'].encode('utf-8')] = parsed['retweet_count']         
        mostfav[parsed['text'].encode('utf-8')] = parsed['favorite_count'] 

        time.sleep(2) 



    sortcount = sorted(usercount.items(), key=lambda x: x[1], reverse =True)
    top = sortcount[:1]
    frequser=[]
    for i in sortcount:
        if i[1] == top:
            frequser.append(i)
        else:
            break       
    print ("Top most frequent user: \n " + str(i[0])) +"\n"

    followcount = sorted(userfollowers.items(), key=lambda x: x[1], reverse =True)
    fol = followcount[:1]
    freqfollow = []
    for j in followcount:
        if j[1] == fol:
            freqfollow.append(i)
        else:
            break     
    print ("User with most followers: \n " + str(j[1])) 


    retweetcount = sorted(mostretweets.items(), key=lambda x: x[1], reverse = True)
    ret = retweetcount[:1]
    freqretweet =[]
    for i in retweetcount:
        if i[1] == ret:
            freqretweet == ret
        else:
            break
    print str(i[0])+"\n"

    favcount = sorted(mostfav.items(), key=lambda x: x[1], reverse = True)
    ret = favcount[:1]
    freqfav =[]
    for i in favcount:
        if i[1] == ret:
            freqfav == ret
        else:
            break
    print str(i[0])+"\n"
这是否意味着:

for i in hashtag:
    time.sleep(2)
    for status in tweepy.Cursor(api.search, q=i,since="2017-02-25",until="2017-02-28",lang="en").items():  
工作?

不,它不工作#equality有太多的tweet,收到429错误。当我运行sleep on#equality时,有太多的带有equality的tweet,花费的时间太长,所以它似乎永远不会结束