☀️A simple Python API to retrieve data from openuv.io
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github
pyopenuv
tests
.codeclimate.yml
.coveragerc
.gitignore
.travis.yml
AUTHORS.md
LICENSE
Makefile
Pipfile
README.md
example.py
setup.py
tox.ini

README.md

☀️ pyopenuv: A simple Python API for data from openuv.io

Travis CI PyPi Version License Code Coverage Maintainability Say Thanks

pyopenuv is a simple Python library for retrieving UV-related information from openuv.io.

Installation

pip install pyopenuv

Python Versions

pyopenuv is currently supported on:

  • Python 3.5
  • Python 3.6
  • Python 3.7

However, running the test suite currently requires Python 3.6 or higher; tests run on Python 3.5 will fail.

API Key

You can get an API key from the OpenUV console.

Usage

pyopenuv starts within an aiohttp ClientSession:

import asyncio

from aiohttp import ClientSession

from pyopenuv import Client


async def main() -> None:
    """Create the aiohttp session and run the example."""
    async with ClientSession() as websession:
      # YOUR CODE HERE


asyncio.get_event_loop().run_until_complete(main())

Create a client, initialize it, then get to it:

import asyncio

from aiohttp import ClientSession

from pyopenuv import Client


async def main() -> None:
    """Create the aiohttp session and run the example."""
    async with ClientSession() as websession:
      client = pyopenuv.Client(
        "<OPENUV.IO API KEY>",
        "<LATITUDE>",
        "<LONGITUDE>",
        websession,
        altitude="<ALTITUDE>")

      # Get current UV index information:
      await client.uv_index()

      # Get forecasted UV information:
      await client.uv_forecast()

      # Get information on the window of time during which SPF protection
      # should be used:
      await client.uv_protection_window()


asyncio.get_event_loop().run_until_complete(main())

Contributing

  1. Check for open features/bugs or initiate a discussion on one.
  2. Fork the repository.
  3. Install the dev environment: make init.
  4. Enter the virtual environment: pipenv shell
  5. Code your new feature or bug fix.
  6. Write a test that covers your new functionality.
  7. Run tests and ensure 100% code coverage: make coverage
  8. Add yourself to AUTHORS.md.
  9. Submit a pull request!