Skip to main content

A Python API for info from the City and County of Denver, CO

Project description

📡 pyden: A simple Python API for Denver, CO Data

Travis CI PyPi Version License Code Coverage Maintainability Say Thanks

pyden is a simple library to get data from the city and county of Denver, CO.

PLEASE READ: Version 1.0.0 and Beyond

Version 1.0.0 of pyden makes several breaking, but necessary changes:

  • Moves the underlying library from Requests to aiohttp
  • Changes the entire library to use asyncio
  • Makes 3.6 the minimum version of Python required

If you wish to continue using the previous, synchronous version of pyden, make sure to pin version 0.4.1.

Python Versions

pyden 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.

Installation

 pip install pyden

Usage

pyden starts within an aiohttp ClientSession:

import asyncio

from aiohttp import ClientSession

from pyden 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())

To create a client, simply:

import asyncio

from aiohttp import ClientSession

from pyden import Client


async def main() -> None:
    """Create the aiohttp session and run the example."""
    async with ClientSession() as websession:
      client = Client(websession)


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

Trash Schedule

import asyncio

from aiohttp import ClientSession

from pyden import Client


async def main() -> None:
    """Create the aiohttp session and run the example."""
    async with ClientSession() as websession:
      client = Client(websession)

      # Initialize the trash module:
      await client.trash.init_from_coords(<LAT>, <LON>, "<GOOGLE_API_KEY>")

      # Get the full schedule:
      await client.trash.schedule()

      # ...or get the date of next pickup:
      await client.trash.next_pickup(client.trash.PickupTypes.recycling)


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!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyden-1.0.4.tar.gz (6.1 kB view details)

Uploaded Source

Built Distribution

pyden-1.0.4-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file pyden-1.0.4.tar.gz.

File metadata

  • Download URL: pyden-1.0.4.tar.gz
  • Upload date:
  • Size: 6.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0

File hashes

Hashes for pyden-1.0.4.tar.gz
Algorithm Hash digest
SHA256 75a9d5c0be5a06df08d0bcb1a9e034bc8c4271108a25e80cab01fe668aba975f
MD5 8c40f7a7046ed0f22f282d7e804ac15a
BLAKE2b-256 9d9c95dd50ea739ea1eb698947cc380dd7b7f78c9f2982e76e841b6356fb1081

See more details on using hashes here.

File details

Details for the file pyden-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: pyden-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 5.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0

File hashes

Hashes for pyden-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 f8622104dfc865c2be1f615f32a29357d6a1d11f6266539a8288cbb4177fc40e
MD5 659a5180f8e565ac5c270f65f41dd0be
BLAKE2b-256 6794bef0a2707fe5a9c6decbc70b86f4359ae50ceec48242d1db66f3de891d78

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page