A collection of python code that support various other python projects I have and the Iowa Environmental Mesonet. A goal here is to upstream anything useful into Unidata's MetPy and also remove any redundant code.
| Name | Downloads | Version | Platforms |
|---|---|---|---|
Python 3.10+ is required. Python releases 3.10 through 3.13 are actively tested and supported within this repository.
The codebase currently makes direct database calls with hardcoded assumptions
of the hostname iemdb.local and database names. Someday, I'll use a proper ORM
and software design techniques to make this more extensible for others!
Since this library depends on Cartopy, you likely do not want to let pip
install Cartopy. So the installation options are either:
- Install
Cartopyvia some other mechanism thanpip. - Install
pyiemvia pip.
Or:
- Install
pyiemviacondausing theconda-forgechannel.
This library provides a number of parsers for various NWS products. The implementation of these parsers can be found with my pyWWA project. The main limitation is that the pyWWA parsers use Twisted Python and thus have a somewhat steep learning curve. The pyIEM parsers do not require the usage of Twisted though, so how does one use them?
The general entry point for a text product is the parser method of pyiem.nws.products. So given a NWS text file, the code would look like.
from pyiem.nws.products import parser
text = open('MYFILE.txt').read()
prod = parser(text)
print(prod.get_product_id())The actual methods and attributes on the prod object above will vary depending on the type of product involved.