Sad*_*ksk 6 python python-3.x python-requests
我有一个关于速率限制的问题。我从 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
Run Code Online (Sandbox Code Playgroud)
如果您已经知道每秒只能发出 20 个请求,您只需要计算每个请求之间等待的时间:
将 1 秒除以 20,得到 0.05。所以你只需要在每个请求之间休眠 0.05 秒,你不应该达到限制(如果你想安全,可以增加一点)。
import time在你的文件的顶部,然后time.sleep(0.05)在你的for循环内(你也可以这样做time.sleep(1/20))
| 归档时间: |
|
| 查看次数: |
8026 次 |
| 最近记录: |