def do_browse(self, _, dir): if self.filename.get_text(): start = os.path.dirname(self.filename.get_text()) else: start = None if dir: fn = dplatform.get_platform().gui_select_dir(start) else: fn = dplatform.get_platform().gui_save_file(start) if fn: self.filename.set_text(fn)
def do_update(self): p = dplatform.get_platform() try: fn, headers = p.retrieve_url(self.__url) content = file(fn).read() except Exception, e: print "[NBDC] Failed to fetch info for %i: %s" % (self.__buoy, e) self.set_name("NBDC %s" % self.__buoy) return
def display_in_browser(self): f = tempfile.NamedTemporaryFile(suffix=".html") name = f.name f.close() f = file(name, "w") f.write(self.make_html()) f.flush() f.close() p = dplatform.get_platform() p.open_html_file(f.name)
def __parse_site(self): url = "http://waterdata.usgs.gov/nwis/inventory?search_site_no=%s&format=sitefile_output&sitefile_output_format=xml&column_name=agency_cd&column_name=site_no&column_name=station_nm&column_name=dec_lat_va&column_name=dec_long_va&column_name=alt_va" % self.__site p = dplatform.get_platform() try: fn, headers = p.retrieve_url(url) content = file(fn).read() except Exception, e: print "[NSGS] Failed to fetch info for %s: %s" % (self.__site, e) self.set_name("NSGS NWIS Site %s" % self.__site) return
def create_form_from_mail(self, mail): id = self.config.get("user", "callsign") + \ time.strftime("%m%d%Y%H%M%S") + \ mail.get("Message-id", str(random.randint(0, 1000))) mid = dplatform.get_platform().filter_filename(id) ffn = os.path.join(self.config.form_store_dir(), _("Inbox"), "%s.xml" % mid) try: form = create_form_from_mail(self.config, mail, ffn) except Exception, e: print "Failed to create form from mail: %s" % e return
def __parse_level(self): url = "http://waterdata.usgs.gov/nwis/uv?format=rdb&period=1&site_no=%s" % self.__site p = dplatform.get_platform() try: fn, headers = p.retrieve_url(url) line = file(fn).readlines()[-1] except Exception, e: print "[NSGS] Failed to fetch info for site %s: %s" % (self.__site, e) self.set_comment("No data") self.set_timestamp(time.time()) return