Astral is a Python library for calculating the times of various aspects of the sun.
It calculates the following
The time in the morning when the sun is a specific number of degrees below the horizon.
The time in the morning when the top of the sun breaks the horizon (asuming a location with no obscuring features.)
The time when the sun is at its highest point.
The time in the evening when the sun is about to disappear below the horizon (asuming a location with no obscuring features.)
The time in the evening when the sun is a specific number of degrees below the horizon.
The number of degrees clockwise from North at which the sun can be seen
The number of degrees up from the horizon at which the sun can be seen
"Rahukaalam or the period of Rahu is a certain amount of time every day that is considered inauspicious for any new venture according to Indian astrology".
The following example demonstrates the functionality available in the module
from astral import Astral
city_name = 'London'
a = Astral()
a.solar_depression = 'civil'
city = a[city_name]
print('Information for %s/%s
' % (city_name, city.country))
timezone = city.timezone
print('Timezone: %s' % timezone)
print('Latitude: %.02f; Longitude: %.02f
sun = city.sun(date=datetime.date(2009, 4, 22), local=True)
print('Dawn: %s' % str(sun['dawn']))
print('Sunrise: %s' % str(sun['sunrise']))
print('Noon: %s' % str(sun['noon']))
print('Sunset: %s' % str(sun['sunset']))
print('Dusk: %s' % str(sun['dusk']))
Produces the following output:
Information for London/England
Latitude: 51.60; Longitude: 0.08
Dawn: 2009-04-22 05:12:56+01:00
Sunrise: 2009-04-22 05:49:36+01:00
Noon: 2009-04-22 12:58:48+01:00
Sunset: 2009-04-22 20:09:07+01:00
Dusk: 2009-04-22 20:45:52+01:00
This module is licensed under the terms of the MIT license.
Astral has one external dependency on 'pytz' which can either be obtained from Sourceforge page or via the easy_install method, whichever is your particular poison.
When you've added the pytz package to install astral unzip the archive to a handy location and execute the standard Python installation method:
python setup.py install
What's New in This Release: [ read full changelog ]
· Minor bug fix in GoogleGeocoder. location name and region are now stripped of whitespace.