import appuifw import urllib import e32 class App: def __init__(self): self.manhattan_cams = { '10':u'2 Ave @ 125 Street', '07':u'5 Ave @ 23 Street', '08':u'5 Ave @ 49 Street', '12':u'6 Ave @ 42 Street', '10':u'6 Ave @ 49 Street', '66':u'7 Ave @ 125 Street', '68':u'7 Ave @ 145 Street', '19':u'8 Ave @ 34 Street', '20':u'8 Ave @ 42 Street', '17':u'9 Ave @ 34 Street', '31':u'11 Ave @ 42 Street', '67':u'Amsterdam Ave @ 181 St', '65':u'Broadway @ 169 St', '02':u'Church Street @ Vesey', '15':u'E 57 Street @ QBB (btwn 1 & 2 Ave)', '16':u'E 63 Street @ QBB (btwn 1 & 2 Ave)', '23':u'FDR Dr @ 36 Street', '24':u'FDR Dr @ 78 Street', '25':u'FDR Dr @ 96 Street', '27':u'FDR @ 135 St', '74':u'FDR @ 155 St', '64':u'FDR @ Old Slip', '01':u'Riverside Dr @ 135 St - H Hudson Pkwy', '28':u'Riverside Dr @ 153 St - H Hudson Pkwy', '50':u'West St @ Canal St', '71':u'West St @ Murray St' } self.lock = e32.Ao_lock() self.old_exit_key = appuifw.app.exit_key_handler appuifw.app.exit_key_handler = self.exit_handler self.display_list() self.lock.wait() def exit_handler(self): self.lock.signal() def display_list(self): appuifw.app.body = appuifw.Listbox(self.manhattan_cams.values(), self.load) def load(self): try: id = appuifw.app.body.current() k = self.manhattan_cams.keys() url = "http://207.251.86.248/cctv%i.jpg"%int(k[id]) urllib.urlretrieve(url, "C:\\traffic.jpg") content_handler = appuifw.Content_handler() content_handler.open("C:\\traffic.jpg") except IOError: appuifw.note(u"Could not fetch the image.",'info') except Exception, E: appuifw.note(u"Could not open the data, %s"%E,'info') A = App()