2017-07-31 92 views
0

我正在使用日出日落api來獲取日間和日落。使用python將UTC時間轉換爲經度和緯度的本地時間提供

>>> url = "https://api.sunrise-sunset.org/json?lat=36.7201600&lng=-4.4203400&date=2017-07-31" 
>>> import urllib2 
>>> import json 
>>> resp = urllib2.urlopen(url) 
>>> data = json.load(resp) 
>>> sunriseUtc = data.get("results").get("sunrise") 
>>> sunriseUtc 
u'5:23:18 AM' 

我想將此UTC時間轉換爲Long,Lat在URL中傳遞的當地時間。即不是用戶本地。

任何幫助將不勝感激。

+0

的可能的複製[Python的 - 轉換UTC時間字符串當地日期時間(https://stackoverflow.com/questions/4770297/python-convert-utc-datetime-string-to-local-datetime) – Rahul

+0

@Rahul我不想轉換爲本地日期時間 –

+0

使用pytz進行時區轉換。 https://stackoverflow.com/questions/10997577/python-timezone-conversion – Rahul

回答

0

而不是使用網絡查詢你可能會更好使用pyephem,它是pip install pyephem能夠,並會給你日出/設置時間,(和更多),給定的位置,(拉特/長),基於物理值。

>>> import ephem 
>>> sun = ephem.Sun() 
>>> greenwich = ephem.Observer() 
>>> greenwich.lat = '51:28:38' 
>>> print(greenwich.horizon) 
0:00:00.0 
>>> greenwich.date = '2007/10/1' 
>>> r1 = greenwich.next_rising(sun) 
>>> greenwich.pressure = 0 
>>> greenwich.horizon = '-0:34' 
>>> greenwich.date = '2007/10/1' 
>>> r2 = greenwich.next_rising(sun) 
>>> print('Visual sunrise: %s' % r1) 
Visual sunrise: 2007/10/1 05:59:30 
>>> print('Naval Observatory sunrise: %s' % r2) 
Naval Observatory sunrise: 2007/10/1 05:59:50 
+0

好吧,我會試試看,但我寧願準確 –

+0

我認爲你會發現pyhehem如果使用正確的話,它的精確度非常高,當然它也可以離線工作。 –

+0

它也在觀察者位置的utc和時間之間轉換。 –