Skip to main content

Reads and archives NOAA Integrated Surface Database (ISD) files

Project description

pyisd

Tests Lint PyPI - Version Read the Docs (version)

Reads NOAA Integrated Surface Database (ISD) data.

Installation

pip install isd

Usage

There is a simple command line interface. The isd record command prints a single record in JSON format:

isd record tests/data/720538-00164-2021

The Python API allows reading compressed and uncompressed ISD files:

from isd import Batch

batch = Batch.from_path("isd-file")
for record in batch:
    print(record)

Streaming is also supported:

import isd.io

with isd.io.open("isd-file") as records_iterator:
    records = list(records_iterator)

There is currently no parsing of the additional_data section, but all mandatory fields are parsed out into appropriately-typed fields on a Record.

Development

Install the development requirements and the package in editable mode:

pip install -e '.[dev]'

To run the unit tests:

pytest

Release

To cut a new release of pyisd (assuming you have the appropriate permissions):

  1. Create a new branch, e.g. release/v0.1.4.
  2. Update pre-commit hooks: pre-commit autoupdate
  3. Update the CHANGELOG and pyproject.toml.
  4. Open a pull request with the changes.
  5. Merge the pull request once all required checks pass.
  6. Create an annotated tag, e.g. git tag -a v0.1.4.
  7. Push the annotated tag to github.
  8. Create a Github release. This will trigger a new PyPI release.

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

isd-0.3.0.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

isd-0.3.0-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

Details for the file isd-0.3.0.tar.gz.

File metadata

  • Download URL: isd-0.3.0.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.7

File hashes

Hashes for isd-0.3.0.tar.gz
Algorithm Hash digest
SHA256 aa6763efeb8f25c2e83d5f445672d3868e5332a9d4479ff84e8a12b296af56bf
MD5 6158e3ae106afd850b0865163bd75291
BLAKE2b-256 062c2be8905839d8b23acd687369f02a5b939ce0c76f6663d62865604571c29f

See more details on using hashes here.

File details

Details for the file isd-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: isd-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 8.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.7

File hashes

Hashes for isd-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0ef6f73ea619fbe17ae853dabbea95636038258568ed4c436d1ef79be3a0878b
MD5 11ca94332bc8092c68a25fe89cea40fe
BLAKE2b-256 a46de61659aa51e6e3bc2356e0f3ff82af481cd6bac72228dbf9b86d13f3c41c

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