Darksky循环通过一年的每日数据Datetime错误

2024-04-28 23:49:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试使用forecastiopy循环查看2019年的每日天气数据,但错误不断出现。不知道问题出在哪里

import pandas as pd 
import requests
import json 
from forecastiopy import *
from datetime import date, timedelta, datetime
import datetime

key = 'xxxxx'

city = [40.730610, -73.935242]
start = datetime.datetime(2019, 1, 1)


for day in range(1,365):
    fio = ForecastIO.ForecastIO(key,
                        units=ForecastIO.ForecastIO.UNITS_SI,
                        lang=ForecastIO.ForecastIO.LANG_ENGLISH,
                        latitude=city[0], 
                        longitude=city[1],
                        time=start+datetime.timedelta(day))
    daily = FIODaily.FIODaily(fio)
    print ('Max Temperature', daily.get_day(day)['temperatureMax'])
    print ('Min Temperature:', daily.get_day(day)['temperatureMin'])
    print ('Precipitation Pobability:', daily.get_day(day)['precipProbability'])
    print ('Precipitation Intensity', daily.get_day(day)['precipIntensity'])

下面显示了错误

enter image description here


Tags: keyfromimportcitygetdatetime错误start
1条回答
网友
1楼 · 发布于 2024-04-28 23:49:36
ForecastIO.ForecastIO(key,
    ...,
    time=start+datetime.timedelta(day))

这里,time参数应该是直接映射到Dark Sky API的字符串:

time

Either be a UNIX time (that is, seconds since midnight GMT on 1 Jan 1970) or a string formatted as follows: [YYYY]-[MM]-[DD]T[HH]:[MM]:[SS][timezone]. [...]

因此,可以使用^{}格式化datetime对象

ForecastIO.ForecastIO(key,
    ...,
    time=(start+datetime.timedelta(day)).isoformat())

相关问题 更多 >