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