def getmetar(icao): try: icao = str(icao.upper()) metar = MetarSet(icao) metar.refresh() metar = metar.get_latest() metar = (str(metar.raw_text)) return str(metar) except Exception as e: return str(e)
indicators.append( Indicator('yellow', "Wind Gusting: %s kts" % metar.wind.gust)) if metar.temp <= -4: indicators.append( Indicator( 'yellow', "It's chilly: %.0fC (%.0fF)" % (metar.temp, (metar.temp * 9 / 5 + 32)))) return indicators if len(sys.argv) != 2: print "Must enter a single airport identifier as an argument." sys.exit(1) metar_set = MetarSet("%s" % sys.argv[1]) metar_set.refresh() #metar = Metar('KAPA', fake='mock.xml') metar = metar_set.get_latest() if metar is None: print "No METARs found" sys.exit(1) bad_indicators = get_bad_indicators(metar) print metar.raw_text if len(bad_indicators) == 0: print Indicator('green') else: for indicator in bad_indicators: print indicator
def setUp(self): with open('tests/mock_KBUF.xml', 'rU') as f: self.mock_response = f.read() self.metar_set = MetarSet('KBUF,KAPA') self.metar_set.refresh(mock_response=self.mock_response)
def test_implicit_station_string(self): metar_set = MetarSet('wrong') metar_set.refresh(mock_response=self.mock_response) for metar in metar_set.report_set: self.assertEqual(metar.station.station_id, "KBUF")
def __init__(self, station_id): self.station = WeatherStation(station_id) self.metars = MetarSet(station_id) self.tafs = TafSet(station_id) self.refresh()