我正在以JSON格式查询数据,但我希望它在每次添加更新数据时都继续提取数据。我还将此数据插入Postgresql数据库。但是,由于数据是每小时添加到url中,而不是等待数据库填满,我希望它在第一次循环中快速提取最后2-3个月的数据,然后继续每小时拍摄一次。我怎么能这么做?
parameters = {
"StationId": "377e1216-bcc7-42c0-aad8-4d5b3d602b78",
"StartDate": "12.01.2022%2000:00:00",
"EndDate": "12.01.2022%2001:00:00 }
payload = {}
headers= {}
url="https://api.ibb.gov.tr/havakalitesi/OpenDataPortalHandler/GetAQIByStationId"
req = requests.get(url, params = parameters)
if req.status_code == 200:
decodeUrl = unquote(istek.url)
response = requests.get(decodeUrl,headers=headers, data = payload)
result = json.loads(response.text)
print("Success")
else:
print("Wrong.")发布于 2022-02-04 12:04:57
您可以首先使参数变量,以便您可以在每次调用中使用它们。就像这样:
parameters = {
"StationId": "377e1216-bcc7-42c0-aad8-4d5b3d602b78",
"StartDate": start_date,
"EndDate": end_date }然后将触发调用的功能拆分为2.1 "script“(由于缺乏更好的术语),只触发一次以填充数据库。获取当前日期并减去3个月,然后将其放入参数中。
您的第二个脚本将执行相同的操作,但是使用前一个小时并将其输入参数中。然后(取决于您的操作系统)运行一个cron作业或计划的任务,在那里启动第二个脚本。
https://stackoverflow.com/questions/70985159
复制相似问题