Metadata-Version: 2.4
Name: dxcty_parser
Version: 0.0.4
Summary: A simple ham radio cty parser library.
Author-email: Fred C <w6bsd@bsdworld.org>
License-Expression: BSD-3-Clause
Project-URL: Source, https://github.com/0x9900/dxcty_parser
Project-URL: Tracker, https://github.com/0x9900/dxcty_parser/issues
Classifier: Intended Audience :: Telecommunications Industry
Classifier: Operating System :: MacOS
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.10
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Provides-Extra: dev
Requires-Dist: build; extra == "dev"
Requires-Dist: flake8; extra == "dev"
Requires-Dist: ipdb; extra == "dev"
Requires-Dist: ipython; extra == "dev"
Requires-Dist: isort; extra == "dev"
Requires-Dist: mypy; extra == "dev"
Requires-Dist: pre-commit; extra == "dev"
Requires-Dist: pylint; extra == "dev"
Requires-Dist: twine; extra == "dev"

# dxcty_parser

Parse [cty.dat](https://www.country-files.com/cty-dat-format/) (the AD1C
"country file") and resolve amateur radio callsigns to DXCC entities —
country, CQ zone, ITU zone, continent, lat/long, and GMT offset.

## Usage

```python
>>> from dxcty_parser import load_cty
>>> table = load_cty()  # build once, reuse for many lookups
>>> result = table.lookup("W1AW")
>>> print(f'Result: {result.entity.country}, {result.entity.itu_zone}')
Result: United States, 8
```

## CLI

This is intended to be used as a library. The CLI is just for testing purpose.

```
% dxcty_parser W1AW KM6ETX
W1AW: United States (K) CQ=5 ITU=8 Cont=NA GMT=-5.0 Latitude=42.38, Longitude=71.65
KM6ETX: United States (K) CQ=3 ITU=6 Cont=NA GMT=-8.0 Latitude=35.48, Longitude=119.35
```

## Requirements

Python 3.10+, standard library only.
