def __init__(self): self.bandsintown = Bandsintown(settings.BANDSINTOWN_APP_ID) self.songkick = Songkick(settings.SONGKICK_API_KEY)
def check_concerts(self, widget): self.textview.get_buffer().set_text("") #pixbuf = GdkPixbuf.Pixbuf.new_from_file('SK_badge.png') bad_names = [] dev_key = "yBb9DilAbXqZ0MCH" try: songkick = Songkick(api_key=dev_key) except: self.textview.get_buffer().set_text( "ERROR: Unable to access SongKick!\n") return None infile = open("name_setting.txt", "r") temp = infile.read().split("\n") temp = filter(None, temp) artist_names = list(set(temp)) #self.url_lib = Gtk.Label() #self.url_lib.set_markup('<a href="http://www.w3schools.com/html/">Visit our HTML tutorial</a>') self.ebox = Gtk.Button("PLEASE") self.ebox.show() #anchor = Gtk.TextChildAnchor() #buffer1 = self.textview.get_buffer() #iter1 = buffer1.get_end_iter() #anchor = buffer1.create_child_anchor(iter1) #self.textview.add_child_at_anchor(self.url_lib, anchor) #self.textview.show_all() #self.textview.get_buffer().insert_with_tags(self.textview.get_buffer().get_end_iter(), self.url_lib) # anchor = self.textview.create_child_anchor(self.textview.get_buffer().get_end_iter()) if not artist_names: self.textview.get_buffer().set_text( "Your List of Artists is Empty!\n") return file_setting.write_new_file(artist_names, "name_setting.txt") new_city = file_setting.parse_file("city_setting.txt") try: search = new_city[0] except: search = "" pass if search == "": error_mess = "you currently do not have a location set!" self.textview.get_buffer().insert( self.textview.get_buffer().get_end_iter(), "\n" + error_mess) return None #search = search.lower() search = search.title() user_city = search for name in artist_names: events = songkick.events.query(artist_name=name) try: for event in events: city = event.location.city.encode('ascii', 'ignore').split(",") if city[0] == user_city: url1 = "<a href=" url2 = event.uri.encode('ascii', 'ignore') url3 = ">Check Tickets</a>" final_url = url1 + "\"" + url2 + "\"" + url3 index = final_url.find('utm_medium') tickets_url = final_url[:index] + "amp;" + final_url[ index:] event_name = event.display_name.encode( 'ascii', 'ignore') event_loc = event.location.city.encode( 'ascii', 'ignore') event_venue = event.venue.display_name.encode( 'ascii', 'ignore') self.textview.get_buffer().insert( self.textview.get_buffer().get_end_iter(), "\n" + "--------------------------------------------------------------------------------------------------" ) self.textview.get_buffer().insert( self.textview.get_buffer().get_end_iter(), "\n" + "*") self.textview.get_buffer().insert( self.textview.get_buffer().get_end_iter(), "\n" + name) self.textview.get_buffer().insert( self.textview.get_buffer().get_end_iter(), "\n" + "*") self.textview.get_buffer().insert( self.textview.get_buffer().get_end_iter(), "\n" + event_name) self.textview.get_buffer().insert( self.textview.get_buffer().get_end_iter(), "\n" + event_loc) self.textview.get_buffer().insert( self.textview.get_buffer().get_end_iter(), ", " + event_venue) #self.textview.get_buffer().insert_pixbuf(self.textview.get_buffer().get_end_iter(), pixbuf) self.textview.get_buffer().insert( self.textview.get_buffer().get_end_iter(), "\n") test_url = '<a href="http://www.w3schools.com/html/">Check Tickets</a>' #print test_url #print tickets_url #print final_url self.url_lib = Gtk.Label() self.url_lib.set_markup(tickets_url) buffer1 = self.textview.get_buffer() iter1 = buffer1.get_end_iter() anchor = buffer1.create_child_anchor(iter1) self.textview.add_child_at_anchor(self.url_lib, anchor) self.textview.show_all() except: bad_names.append(name) continue if bad_names: for name in bad_names: file_setting.delete_data(name, "name_setting.txt")
def check_concerts(self, widget): self.textview.get_buffer().set_text("") bad_names = [] global dev_key #global key try: songkick = Songkick(api_key = dev_key) except: self.textview.get_buffer().set_text("ERROR: Unable to access SongKick!\n") return None infile = open("data/settings/name_setting.txt", "r") temp = infile.read().split("\n") temp = filter(None, temp) artist_names = list(set(temp)) if not artist_names: self.textview.get_buffer().set_text("Your List of Artists is Empty!\n") return file_setting.write_new_file(artist_names, "data/settings/name_setting.txt") new_city = file_setting.parse_file("data/settings/city_setting.txt") try: search = new_city[0] except: search = "" pass if search == "": error_mess = "you currently do not have a location set!" self.textview.get_buffer().insert(self.textview.get_buffer().get_end_iter(), "\n" + error_mess) return None search = search.title() user_city = search for name in artist_names: events = songkick.events.query(artist_name = name ) try: for event in events: city = event.location.city.encode('ascii', 'ignore').split(",") if city[0] == user_city: url1 = "<a href=" url2 = event.uri.encode('ascii','ignore') url3 = ">Check Tickets</a>" final_url = url1 + "\"" + url2 + "\"" + url3 index = final_url.find('utm_medium') tickets_url = final_url[:index] + "amp;" + final_url[index:] event_info = ( "\n--------------------------------------------------------------------------------------------------\n" "*\n" "{artist_name}\n" "*\n" "{event_name}\n" "{event_location}, {venue_name}\n" ).format( artist_name = name, event_name = event.display_name.encode('ascii','ignore'), event_location = event.location.city.encode('ascii','ignore'), venue_name = event.venue.display_name.encode('ascii','ignore') ) self.textview.get_buffer().insert(self.textview.get_buffer().get_end_iter(), event_info) self.url_lib = Gtk.Label() self.url_lib.set_markup(tickets_url) buffer1 = self.textview.get_buffer() iter1 = buffer1.get_end_iter() anchor = buffer1.create_child_anchor(iter1) self.textview.add_child_at_anchor(self.url_lib, anchor) self.textview.show_all() except: bad_names.append(name) continue if bad_names: for name in bad_names: file_setting.delete_data(name , "data/settings/name_setting.txt")