Pour de nombreuses API (la plupart que j'ai vues), la limitation de rapport est fonction de votre clé API ou de vos informations d'identification OAuth. (Google, Twitter, NOAA, Yahoo, Facebook, etc.) La bonne nouvelle est que vous n'aurez pas besoin d'usurper votre adresse IP, il vous suffit d'échanger vos informations d'identification car elles atteignent leur limite de taux.
Un peu d'auto promotion sans vergogne ici, mais j'ai écrit un package python spécifiquement pour gérer ce problème.
https://github.com/rawkintrevo/angemilner
https://pypi.python.org/pypi/angemilner/0.2.0
Il nécessite un démon mongodb et, fondamentalement, vous créez une page pour chacune de vos clés. Vous avez donc 4 adresses e-mail chacune avec une clé distincte attribuée. Lorsque vous chargez la clé, vous spécifiez le nombre maximal d'appels par jour et le temps minimum entre les utilisations.
Clés de chargement:
from angemilner import APIKeyLibrarian
l= APIKeyLibrarian()
l.new_api_key("your_assigned_key1", 'noaa', 1000, .2)
l.new_api_key("your_assigned_key2", 'noaa', 1000, .2)
Ensuite, lorsque vous exécutez votre grattoir, par exemple, l'API NOAA:
url= 'http://www.ncdc.noaa.gov/cdo-web/api/v2/stations'
payload= { 'limit': 1000,
'datasetid': 'GHCND',
'startdate': '1999-01-01' }
r = requests.get(url, params=payload, headers= {'token': 'your_assigned_key'})
devient:
url= 'http://www.ncdc.noaa.gov/cdo-web/api/v2/stations'
payload= { 'limit': 1000,
'datasetid': 'GHCND',
'startdate': '1999-01-01' }
r = requests.get(url, params=payload, headers= {'token': l.check_out_api_key('noaa')['key']})
donc si vous avez 5 clés, l.check_out_api_key
retourne la clé qui a le moins d'utilisations et attend jusqu'à ce que suffisamment de temps se soit écoulé pour qu'elle soit réutilisée.
Enfin, pour voir à quelle fréquence vos clés ont été utilisées / utilisation restante disponible:
pprint(l.summary())
Je n'ai pas écrit ceci pour R car la plupart des grattages se font en python (la plupart de mes grattages). Il pourrait être facilement porté.
Voilà comment vous pouvez techniquement contourner la limitation de taux. Ethiquement ...
MISE À JOUR L'exemple utilise l'API Google Adresses ici