如何向 JSON/rest API 发出多个请求,更改日期参数并将其保存到数据帧



我需要查询 JSON/rest API 以获取一系列日期。该 API 包含一个格式为 ddmmyyyy 的日期参数。因此,我只能查询一个日期。我应该能够循环查询日期范围。目标是将查询的日期范围的所有数据保存在数据帧中,以将其导出为 CSV。

import requests
import pandas as pd
import json
date = '04022018'
res = requests.get("https://api.desarrolladores.datos.gob.cl/mercado-publico/v1/ordenesdecompra/fecha.json/?auth_key=120ee16a05eac5ac399ebee7badf0af264bf5bb9&fecha={}&estado=todos".format(date))
j = res.json()
# print(j)
filename ="temp.csv"
df = pd.DataFrame(j['ordenesDeCompra'])
print(df.head())
df.to_csv(filename)

使用该代码,我可以将结果保存在数据帧和CSV中,但我不知道如何浏览一系列日期。我假设"对于范围内的x"或类似的东西。

URL_FORMAT_STRING = "https://api.desarrolladores.datos.gob.cl/mercado-publico/v1/ordenesdecompra/fecha.json/?auth_key=120ee16a05eac5ac399ebee7badf0af264bf5bb9&fecha={}&estado=todos"
import datetime
start_date = datetime.date(2018, 2, 4)
for i in range(<as many days as you want to iterate over>):
    date = start_date + datetime.timedelta(days=i)
    result_for_date = requests.get(URL_FORMAT_STRING.format(date.strftime(%Y%m%d)))

最新更新