Python -API -Rate Begrenzung - So begrenzen die API -Aufrufe weltweitPython

Python-Programme
Anonymous
 Python -API -Rate Begrenzung - So begrenzen die API -Aufrufe weltweit

Post by Anonymous »

Ich versuche, die API -Anrufe in meinem Code einzuschränken. Ich habe bereits eine schöne Python -Bibliothek ratelimiter == 1.0.2.post0
https://pypi.python.org/pypi/Ratelimiter

Diese Bibliothek kann den Rate nur im lokalen Spielraum einschränken. d.h.) in Funktion und Schleifen < /p>

Code: Select all

# Decorator
@RateLimiter(max_calls=10, period=1)
def do_something():
pass

# Context Manager
rate_limiter = RateLimiter(max_calls=10, period=1)

for i in range(100):
with rate_limiter:
do_something()
< /code>

Da ich mehrere Funktionen habe, die API -Aufrufe an verschiedenen Stellen tätigen, möchte ich die API -Aufrufe in  global < /strong> Scope einschränken. Und nehmen Sie an, ich habe Funktionen x 
und y , in denen zwei API -Aufrufe getätigt werden.

Code: Select all

@rate(...)
def x():
...

@rate(...)
def y():
...
< /code>

Durch Dekorieren der Funktionen mit dem Limiter < /code> kann ich die Rate gegen die beiden Funktionen einschränken. Y 
wird also direkt nach der Ausführung von X aufgerufen, ohne eine weitere Sekunde zu warten. Und dies wird gegen die Einschränkung der eine Zeit pro Sekunde verletzen.>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post