A wrapper for the launchlibrary.net API
Project description
python-launch-library
A simple python wrapper for the Launch Library web API. Can also be used asynchronously too.
Available models: Agency, AgencyType, Launch, Launch Status, Pad, Location, Rocket, RocketFamily
The usage of the API is simple.
Usage
Proper documentation is available in Read The Docs.
To install, simply use pip: pip install python-launch-library
# Import the launchlibrary lib
import launchlibrary as ll
# Create an instance of the API
api = ll.Api() # You can also specify api url, api version...
# And request the next 5 launches, for example.
launches = ll.Launch.fetch(api, next=5) # Any argument after "api" is not constrained (w/ kwargs).
# ^ Returns a list of launch objects.
# You can fetch the pythonic property names by using launch.param_names
properties = launches[0].param_names
# It's now possible to also use the regular API names as well as pythonic names.
vid_urls = launches[0].vid_urls
vid_urls_2 = launches[0].vidURLs
Changelog
-
1.0 - Changed all fetch calls to be through the Api object. This is a breaking change.
import launchlibrary as ll api = ll.Api() # Before next_launch = ll.Launch.next(api, 1) # After next_launch = api.next_launches(1)
Todo
- Tidy up the repository
- Add exceptions to handle server timeout
- Handle nested models (i.e. a Pad model inside a Location model inside a Launch model)
- Handle times with the datetime class
- Package properly and upload to PyPI
- Add more abstraction methods for the api calls (open to suggestions)
- Add magic method comparisons (open to suggestions)
- Asynchronous operation
- Add aliases for actual API names with getattr
- Add tests
- Your suggestion here
Feel free to open issues and pull requests! I usually check Github daily.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
python-launch-library-1.tar.gz
(10.1 kB
view hashes)