Определить ограничение скорости для запросов - PullRequest
0 голосов
/ 26 мая 2018

У меня вопрос по лимитам ставок.Я беру данные из CSV и ввожу их в запрос, а результат сохраняется в списке.Я получаю ошибку, потому что я делаю слишком много запросов одновременно.(Я могу сделать только 20 запросов в секунду).Как я могу определить ограничение скорости?

import requests
import pandas as pd 

df = pd.read_csv("Data_1000.csv")
list = []



def requestSummonerData(summonerName, APIKey):

    URL = "https://euw1.api.riotgames.com/lol/summoner/v3/summoners/by-name/" + summonerName + "?api_key=" + APIKey
    response = requests.get(URL)
    return response.json()

def main():
    APIKey = (str)(input('Copy and paste your API Key here: '))

    for index, row in df.iterrows():
        summonerName = row['Player_Name']
        responseJSON  = requestSummonerData(summonerName, APIKey)
        ID = responseJSON ['accountId']
        ID = int(ID)
        list.insert(index,ID)

    df["accountId"]= list

1 Ответ

0 голосов
/ 26 мая 2018

Если вы уже знаете, что можете делать только 20 запросов в секунду, вам просто нужно выяснить, как долго ждать между каждым запросом:

Разделите 1 секунду на 20, что должно дать вам 0,05.Так что вам просто нужно поспать по 0,05 секунды между каждым запросом, и вы не должны превышать предел (возможно, увеличьте его немного, если хотите быть в безопасности).

import time вверхуфайл, а затем time.sleep(0.05) внутри цикла for (вы также можете просто сделать time.sleep(1/20))

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...