Возврат времени восхода и захода солнца на основе даты и времени с использованием Python - PullRequest
0 голосов
/ 19 марта 2019

Мой df такой.

DateTime            Pdc
01/04/2016 10:00    1
01/04/2016 10:05    2
02/04/2016 10:10    3
02/04/2016 10:15    4
03/04/2016 10:20    5
03/04/2016 10:25    6
03/04/2016 10:30    7

Я хочу добавить два столбца времени восхода и заката, основываясь на дате на df, как показано ниже:

DateTime            Pdc  Sunrise  Sunset
01/04/2016 10:00    1    time     time
01/04/2016 10:05    2    time     time
02/04/2016 10:10    3    time     time
02/04/2016 10:15    4    time     time
03/04/2016 10:20    5    time     time
03/04/2016 10:25    6    time     time
03/04/2016 10:30    7    time     time

Понятия не имею, как это сделать. Пытаясь это , я не знаю, как реализовать это без пакета timezone. Эта возвращает ошибку, которую я не могу устранить. Это работает с Python 2, я его не проверял. Этот работает для городов в списке, но не для моих городов.

1 Ответ

0 голосов
/ 20 марта 2019

Вы можете получить время заката и восхода с https://sunrise -sunset.org / api .Все, что вам нужно, это знать свою широту и долготу.Если вы их не знаете, вы можете получить их из geopy lib:

import requests
from geopy.geocoders import Nominatim

location = Nominatim().geocode('Moscow')
r = requests.get('https://api.sunrise-sunset.org/json', params={'lat': location.latitude, 'lng': location.longitude}).json()['results']
print('Sunrise:', r['sunrise'])
print('Sunset:', r['sunset'])

Вывод:

Sunrise: 3:30:56 AM
Sunset: 3:42:58 PM
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...