Python library and CLI tool to query the Open Exchange Rates API
5a73d3d8f8
This reduces the number of method overrides to help readability, and gets rid of the annoying format_rate/pretty_rate distinction. |
||
---|---|---|
oxrlib | ||
tests | ||
.gitignore | ||
LICENSE | ||
oxrlib_example.ini | ||
README.rst | ||
setup.cfg | ||
setup.py |
oxrlib ====== Introduction ------------ oxrlib provides a Python library and CLI tool to query the `Open Exchange Rates API <https://openexchangerates.org/>`_. It emphasizes support for rich data types throughout, and supports caching API results to the filesystem. It currently only supports OXR's "historical" API. Getting started with the CLI tool --------------------------------- oxrlib includes an ``oxrquery`` tool to access the OXR API directly from the command line. By default, it reads your OXR credentials and other common configuration from ``~/.config/oxrlib.ini``. Copy ``oxrlib_example.ini`` from the source to ``~/.config/oxrlib.ini``, then edit that file following the instructions in the comments. Run ``oxrquery --help`` for instructions to use the tool. Getting started with the library -------------------------------- Here's an example of using the Python library, complete with caching results:: from oxrlib import cache, loaders, rate filename_format = '{date}_{base}_rates.json' cache_writer = cache.CacheWriter(DIR_PATH, historical=filename_format) loader = loaders.LoaderChain() loader.add_loader(loaders.FileCache(DIR_PATH, historical=filename_format)) loader.add_loader(loaders.OXRAPIRequest(APP_ID_STRING)) with loader.historical(DATE, BASE_CODE_STRING) as json_response: hist_rate = rate.Rate.from_json_file(json_response) if loader.should_cache(): cache_writer.save_rate(hist_rate) # Rates are available from the hist_rate.rates dict. Running tests ------------- Run ``./setup.py test`` from your checkout directory.