def handler_weather_weather(type, source, parameters): if not parameters: reply(type, source, u'hmmmm?') return try: rf = pymetar.ReportFetcher(parameters.strip()) fr = rf.FetchReport() except Exception, ex: results = u'Whether and if such code?' return
def handler_weather_weather(source, parameters): if not parameters: reply(source, u'ииии?') return try: rf = pymetar.ReportFetcher(parameters.strip()) fr = rf.FetchReport() except Exception, ex: if parameters.count('/'): parameters = return_code(parameters.rsplit( ' ', 1)[0]).split()[int(parameters.split('/')[1]) - 1] else: parameters = return_code(parameters).split()[0] try: rf = pymetar.ReportFetcher(parameters.strip()) fr = rf.FetchReport() except Exception, ex: # reply(type, source, u'А оно есть?') return
def handler_weather_weather(type, source, parameters): if not parameters: reply(type, source, u'وبعدين مابدك تحل عني ؟') return try: rf = pymetar.ReportFetcher(parameters.strip()) fr = rf.FetchReport() except Exception, ex: results = u'هل يوجد كود مماثل؟' return
def Display(self): fetcher = pymetar.ReportFetcher() report = fetcher.FetchReport(self.icao) parser = pymetar.ReportParser() parser.ParseReport(report) temperature = report.getTemperatureCelsius() # NOTE(damonkohler): There is no 'Weather' heading for clear weather. weather = report.getWeather() or 'Clear' self.pert.Clear() self.pert.WrapMessage('%d\xdfC %s' % (temperature, weather))
def get_weather(station_name="EHAM"): station = station_name try: rf=pymetar.ReportFetcher(station) rep=rf.FetchReport() except Exception, e: sys.stderr.write("Something went wrong when fetching the report.\n") sys.stderr.write("These usually are transient problems if the station ") sys.stderr.write("ID is valid. \nThe error encountered was:\n") sys.stderr.write(str(e)+"\n") sys.exit(1)
def __init__(self, station): self.io = pymetar.ReportFetcher() self.station = station self.initPeriod = self.updatePeriod = 15 * 60.0 self.minPeriod = 10 * 60.0 self.maxPeriod = 2 * 60 * 60.0 self.lastUpdate = None # Time of last report self.scan = IOScanListBlock() # I/O Intr scan for report data self.intscan = IOScanListBlock() # scan for internal info super(ReportScanner, self).__init__() addHook('AfterIocRunning', self.start) addHook('AtIocExit', self.join)
def get_metar(station): '''fetch the METAR for a given station and return a pymetar object''' wx_fetcher = pymetar.ReportFetcher() dest = station + '.TXT' if not os.path.exists(dest): # pull from network raw_report = wx_fetcher.FetchReport(station) data = urllib2.urlopen(raw_report.reporturl).read() fd = open(dest, 'a+') fd.write(data) fd.close() else: # use local cache fd = open(dest) report_text = fd.read() fd.close() raw_report = wx_fetcher.MakeReport(station, report_text) wx_parser = pymetar.ReportParser() wx_report = wx_parser.ParseReport(raw_report) return wx_report
import pymetar # BMP085 from Adafruit.BMP085.Adafruit_BMP085 import BMP085 # BMP085 from gps import * # GPS # ======================== # Switches # ======================== t1 = os.getpid() DEBUG = 1 LOGGER = 0 # ======================== # Metar declare # ======================== station = "KPNE" rf=pymetar.ReportFetcher(station) rep=rf.FetchReport() rp=pymetar.ReportParser() pr=rp.ParseReport(rep) locAS = 1013.25 # ======================== # COSM variables # ======================== #API_KEY = '1nmfR0zAp8X0jB27soRr6qCxk_iSAKx5NUJHNGJYajZobz0g' #FEED = 79880 #API_URL = '/v2/feeds/{feednum}.xml' .format(feednum = FEED) # ======================== # Setup # ========================
'Snow grain showers' ]) if __name__ == "__main__": if len(sys.argv) > 1: repdir = sys.argv[1] else: repdir = ("reports") if len(sys.argv) > 2: reports = sys.argv[2:] else: reports = os.listdir(repdir) reports.sort() count = 0 rf = pymetar.ReportFetcher() for reportfile in reports: station = reportfile[:-4] fd = open("%s/%s" % (repdir, reportfile)) try: report = fd.read().encode() except UnicodeDecodeError: continue fd.close() repo = rf.MakeReport(station, report) rp = pymetar.ReportParser() pr = rp.ParseReport(repo) a = pr.getConditions()
def getWeather(station): rf = pymetar.ReportFetcher(station) rep = rf.FetchReport() rp = pymetar.ReportParser() return rp.ParseReport(rep)
def get_report_fetcher(self, code): print "creating report fetcher for %s" % code return metar.ReportFetcher(code)
def getWeather(): fetch = pymetar.ReportFetcher(weatherCode) pars = pymetar.ReportParser(fetch.FetchReport()) pars.ParseReport() uinterface.console.AppendText( str(pars.Report.temp) + " C " + str(pars.Report.weather) + "\n")
def retrieve_report(self): rf = pymetar.ReportFetcher(self.station) rep = rf.FetchReport() rp = pymetar.ReportParser() return rp.ParseReport(rep)