Python wrapper around the Flexible Query API of the UNFCCC.
Project description
UNFCCC DI API
Python wrapper around the Flexible Query API of the UNFCCC.
Free software: Apache Software License 2.0
Documentation: https://unfccc-di-api.readthedocs.io.
Warning
Due to a recent change in the UNFCCC’s API, the UNFCCCApiReader class is not functional any more in standard environments. To continue to access the data, you have two options:
Use the new ZenodoReader. It provides access using the query function like the UNFCCCApiReader, but only supports querying for a full dataset with all data. It relies on our data package, which we update regularly; however, the data is naturally not as recent as querying from the API directly.
Run your functions in an environment which is not blocked by the UNFCCC DI API. According to our tests, Azure virtual machines work, as well as github hosted runners, with the exception of Mac OS runners.
Features
High-level API to query all information for a given party.
Low-level API to selectively query information with the same resolution as in the UNFCCC web query tool.
Citation
If you use this library and want to cite it, please cite it as:
Mika Pflüger, Daniel Huppmann & Johannes Gütschow. (2024-01-08). pik-primap/unfccc_di_api: Version 4.0.4. Zenodo. https://doi.org/10.5281/zenodo.10471122
Data package
If you just want all the data in CSV and parquet format (suitable for reading with pandas), look at our data package.
CI status and other links
Changelog
4.0.4 (2024-07-05)
Use the latest data release which switched to a single parquet file for all data.
4.0.3 (2024-07-04)
Re-release 4.0.2 due to technical reasons.
4.0.2 (2024-07-04)
Use data released until 2024-07-04 when using the ZenodoReader.
4.0.1 (2024-01-08)
Use data released until 2024-01-08 when using the ZenodoReader.
Support python 3.12.
4.0.0 (2023-07-18)
Breaking: the UNFCCC restricted API access, likely you have to change your code to use the new ZenodoReader instead.
Add ZenodoReader which doesn’t rely on API access.
Use data released until 2023-07-18 when using the ZenodoReader.
Build the documentation on ReadTheDocs using newer Python and Sphinx versions.
3.0.2 (2022-12-13)
Support python 3.11.
Drop support for python 3.6.
3.0.1 (2022-03-15)
Fix handling of unspecified measure IDs. The DI API started returning measure IDs without a name or description. We now call them unknown measure nr. {measureId} instead of erroring out.
3.0.0 (2021-12-03)
Support python 3.10.
Fix handling of duplicate variable IDs. Note: This entails changes to the public API! In particular, UNFCCCSingleCategoryApiReader.variables now has a generic index instead of using the variableId as index. Also, the query function now correctly restricts queries if category_ids are provided and correctly fills all categories with data for a multi-category variable.
Fix pre-commit config for newer mypy type checking versions.
Raise a more informative NoDataError (subclass of KeyError) instead of a generic KeyError when a query result is empty.
2.0.1 (2021-04-23)
Change build system.
2.0.0 (2021-02-09)
Accept ASCII format for gases when querying data and return gases & units normalized to ASCII (optional), thanks to Daniel Huppmann. Note that gases and units are normalized to ASCII by default, if you need the old behaviour for compatibility reasons, pass normalize_gas_names=False to your query() calls.
1.1.1 (2021-02-08)
Include ipython notebooks and CHANGELOG in release tarballs.
1.1.0 (2021-01-25)
Add a useful error message when querying for unknown parties, thanks to Daniel Huppmann.
1.0.0 (2021-01-22)
Add continuous integration using GitHub actions.
Add tests.
Add usage documentation in notebook format.
Documentation fixes.
0.1.0 (2021-01-22)
First release on PyPI.
Convert API wrapper into standalone Python package.
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
Built Distribution
Hashes for unfccc_di_api-4.0.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f8f879bb7a629d9088526ecc23f456ab3c4c7184a0cc68540647993411e80e15 |
|
MD5 | f3cb9b0ac53a98a14359c3b5dbc858e6 |
|
BLAKE2b-256 | 48167f5ee2381912fe355ae03459b3e77f084e20a32c06cce7d4a888a3fc28db |