in noaa/_tools/process.py [0:0]
def loadStationsFile(stationsFile, statesFile, countriesFile):
statesMap = loadStatesFile(statesFile)
countriesMap = loadCountriesFile(countriesFile)
stationsMap = {}
with open(stationsFile, "r") as file:
for row in file:
try:
station = {}
station["id"] = row[0:11].strip()
countryCode = row[0:2].strip()
if len(countryCode) > 0:
station["country_code"] = countryCode
station["country"] = countriesMap[countryCode]
station["location"] = {
"lat": float(row[12:20].strip()),
"lon": float(row[21:30].strip()),
}
station["elevation"] = float(row[31:37].strip())
if countryCode == "US":
stateCode = row[38:40].strip()
if len(stateCode) > 0:
station["state_code"] = stateCode
station["state"] = statesMap[stateCode]
station["name"] = row[41:71].strip()
gsn_flag = row[72:75].strip()
if len(gsn_flag) > 0:
station["gsn_flag"] = gsn_flag
hcn_crn_flag = row[76:78].strip()
if len(hcn_crn_flag) > 0:
station["hcn_crn_flag"] = hcn_crn_flag
wmo_id = row[80:85].strip()
if len(wmo_id) > 0:
station["wmo_id"] = wmo_id
stationsMap[station["id"]] = station
except:
print(row)
raise e
return stationsMap