API с ограничением скорости 30 запросов в секунду.
Итак, когда я хочу l oop список, содержащий более 30 значений в этот API, возникает ошибка, например:
JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Ниже приведен пример кода:
def financial_ratio(tick):
r = requests.get('https://))
content = json.loads(r.text)
df = pd.DataFrame.from_dict(content).reset_index()
financial_ratio_df = pd.pivot(df, index = 'symbol', columns = 'index', values = 'metric')
return financial_ratio_df
@retry(Exception, delay=5, tries=3) # retry when exception is raised
def financial_ratio_multiple_stock(stock_list):
stock_data = []
for stock in stock_list:
stock_data.append(financial_ratio(stock))
appended_data = pd.concat(stock_data)
return appended_data
Сначала я определил функцию для одного значения, а затем я определяю другую функцию для l oop списка в этой функции . Повтор не работает. Я хочу повторить попытку через 5 секунд, когда возникает ошибка.
Можно ли разделить список на фрагменты меньше 30, скажем, 29 и l oop через эти фрагменты?