python - 使用 Python 根据日期时间返回日出和日落时间
问题描述
我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,我没有检查它。这适用于列表中的城市,但不适用于我的城市。
解决方案
您可以从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
推荐阅读
- java - 如何从JAVA中的字符串中删除ESC字符
- android - 我的应用因违反许可政策而在 Play 商店被拒绝
- jquery - 单击视频时动态添加和删除图标
- list - 迭代列表或 Terraform 中的一组元素的问题
- javascript - 按 2 个日期进行角度过滤
- bash - 在 go 程序中运行时,Bash 脚本挂起
- angularjs - Mongoose:如何避免插入重复记录?
- java - “参数化类型的数组(列表)有什么区别
[] )”和“类型变量数组( T[] )”? - ios - 如何传递 NSMutableDictionary 作为参考?
- mysql - 如何在这个 sql 表中找到所有员工访问的位置?