An Extensive EAS Header to Text Translation Python Library
Features
- EAS to Text Translation
- EAS EOM detection
- Handles Unknown Callsigns, Originators, and FIPS codes
- Additional raw outputs and individual item outputs
- EAS Data Validation
- Fast as all hell, as per usual :3
Installation
This package should be installable through Pip.
On a Debian Based Linux OS:
sudo apt update
sudo apt install python3 python3-pip
pip3 install EAS2Text
On Windows:
In CMD:
python -m pip install EAS2Text
Usage
This package should take a raw ZCZC string, and then return the full text, and/or individual options:
from EAS2Text import EAS2Text
data = EAS2Text("ZCZC-WXR-SPS-024043-024021-024013-024005-024001-024025-051840-051069-054027-054065-054003-054037-054057+0600-0231829-WACN -")
print(f"{data.EASText}")
should output:
The National Weather Service has issued a Special Weather Statement for Washington, MD; Frederick, MD; Carroll, MD; Baltimore, MD; Allegany, MD; Harford, MD; Winchester, VA; Frederick, VA; Hampshire, WV; Morgan, WV; Berkeley, WV; Jefferson, WV; and Mineral, WV; beginning at 12:29 AM January 24, 2022 and ending at 6:29 AM January 24, 2022. Message from WACN.
Advanced Useage:
Using the Generator, you can get additional output of info from an alert:
from EAS2Text import EAS2Text
oof = EAS2Text("ZCZC-WXR-SPS-024043-024021-024013-024005-024001-024025-051840-051069-054027-054065-054003-054037-054057+0600-0231829-WACN -")
## RAW Data output
print(f"RAW Data: {oof.EASData}") ## Input Data
print(f"RAW ORG: {oof.org}") ## Raw Originator Code: ZCZC-{ORG}-EVN-PSSCCC-PSSCCC+TTTT-JJJHHMM-CCCCCCCC-
print(f"RAW EVNT: {oof.evnt}") ## Raw Event Code: ZCZC-ORG-{EVN}-PSSCCC-PSSCCC+TTTT-JJJHHMM-CCCCCCCC-
print(f"RAW FIPS: {oof.FIPS}") ## Raw FIPS Code(s) in a list: ZCZC-ORG-EVN-{PSSCCC-PSSCCC}+TTTT-JJJHHMM-CCCCCCCC-
print(f"Purge Time: {oof.purge}") ## Purge Time in a list format of HH, MM: ZCZC-ORG-EVN-PSSCCC-PSSCCC+{TTTT}-JJJHHMM-CCCCCCCC-
print(f"RAW TIMESTAMP: {oof.timeStamp}") ## RAW Timestamp: ZCZC-ORG-EVN-PSSCCC-PSSCCC+TTTT-{JJJHHMM}-CCCCCCCC-
## Semi-RAW Data
print(f"Start Time: {oof.startTime}") ## A Datetime.Datetime object of the Start Time (Local Timezone)
print(f"End Time: {oof.endTime}") ## A Datetime.Datetime object of the End Time (Local Timezone)
## Parsed Data Output
print(f"TEXT ORG: {oof.orgText}") ## A Human-Readable Version of ORG
print(f"TEXT EVNT: {oof.evntText}") ## A Human Readable Version of EVN
print(f"TEXT FIPS: {oof.FIPSText}") ## A List of All FIPS County Names (Returns "FIPS Code PSSCCC" if no available county)
print(f"TEXT Start Time: {oof.startTimeText}") ##A Start-Time Tag in the format of "HH:MM AM/PM MONTH_NAME DD, YYYY"
print(f"TEXT End Time: {oof.endTimeText}") ##A End-Time Tag in the format of "HH:MM AM/PM MONTH_NAME DD, YYYY"
print(f"{oof.EASText}") ## The full EAS Output data
should output:
RAW Data: ZCZC-WXR-SPS-024043-024021-024013-024005-024001-024025-051840-051069-054027-054065-054003-054037-054057+0600-0231829-WACN -
RAW ORG: WXR
RAW EVNT: SPS
RAW FIPS: ['024043', '024021', '024013', '024005', '024001', '024025', '051840', '051069', '054027', '054065', '054003', '054037', '054057']
Purge Time: ['06', '00']
RAW TIMESTAMP: 0231829
Start Time: 2022-01-23 13:29:00.000178
End Time: 2022-01-23 19:29:00.000178
TEXT ORG: The National Weather Service
TEXT EVNT: a Special Weather Statement
TEXT FIPS: ['Washington, MD', 'Frederick, MD', 'Carroll, MD', 'Baltimore county, MD', 'Allegany, MD', 'Harford, MD', 'Winchester city, VA', 'Frederick, VA', 'Hampshire, WV', 'Morgan, WV', 'Berkeley, WV', 'Jefferson, WV', 'Mineral, WV']
TEXT Start Time: 01:29 PM
TEXT End Time: 07:29 PM
The National Weather Service has issued a Special Weather Statement for Washington, MD; Frederick, MD; Carroll, MD; Baltimore county, MD; Allegany, MD; Harford, MD; Winchester city, VA; Frederick, VA; Hampshire, WV; Morgan, WV; Berkeley, WV; Jefferson, WV; and Mineral, WV; beginning at 01:29 PM and ending at 07:29 PM. Message from WACN.
NEW FEATURE: Encoder Emulation!
EAS2Text is the first Header to Text adapter that can "Emulate ENDECs"
Currently Supported:
- DASDEC
- BURK
- SAGE EAS
- SAGE DIGITAL
- TRILITHIC
- TFT
Not Supported:
- EAS-1
- HollyAnne Units
To use an emulation system:
from EAS2Text import EAS2Text
oof = EAS2Text(sameData = "ZCZC-WXR-SPS-024043-024021-024013-024005-024001-024025-051840-051069-054027-054065-054003-054037-054057+0600-0231829-WACN -", mode="SAGE EAS") ## Emulates a SAGE EAS ENDEC
print(f"{oof.EASText}") ## The full EAS Output data, 1822 style
NEW FEATURE: Timezone Specification!
You can now specify a timezone offset to use! Note: This CAN and WILL break if you use obscure timezones. Keep it to Mainland U.S. for best reliability.
To use an specific timezone:
from EAS2Text import EAS2Text
oof = EAS2Text(sameData = "ZCZC-WXR-SPS-024043-024021-024013-024005-024001-024025-051840-051069-054027-054065-054003-054037-054057+0600-0231829-WACN -", timeZone=-6) ## Uses a UTC-6 Offset
print(f"{oof.EASText}") ## The full EAS Output data, with a UTC-6 Offset.
Release files for EAS2Text 0.1.12
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| EAS2Text-0.1.12.tar.gz | 49.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| EAS2Text-0.1.12-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 96.3 kB
Release files / EAS2Text-0.1.12.tar.gz
| Download URL | EAS2Text-0.1.12.tar.gz |
|---|---|
| Size | 49.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
890b49f6edb9dafb11babeb10f63f417ddab31ab365fa7c5323a9d68225fc45c
|
|
BLAKE2b-256 checksum How to use checksums |
c8bc6f9d3ea2a4bff6addb844c8793163050915bcca3718998772a078f990590
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.10.4
|
Release files / EAS2Text-0.1.12-py2.py3-none-any.whl
| Download URL | EAS2Text-0.1.12-py2.py3-none-any.whl |
|---|---|
| Size | 47.4 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
fa660178371253ddb4ca66ac3a284cd534162a40f97e0fa27e94119b43bd305d
|
|
BLAKE2b-256 checksum How to use checksums |
b79eba0f86326b93fa475d6ab837cdd218472e6bba2d2d11a241d314c1395d1e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.10.4
|