rendered paste bodyimport xml.dom.minidomimport urllib,urllib2 , reimport xbmc, xbmcguifrom string import split, replace, findtry: Emulating = xbmcgui.Emulatingexcept: Emulating = FalseACTION_PREVIOUS_MENU = 10#Base URL for sf Listurl = 'http://www.teamavalaunch.com/other/swimfix/swim.txt'Root = "Q:\\scripts\\AdultSwimFix\\sf\\"class sf_Main(xbmcgui.Window): def __init__(self): if Emulating: xbmcgui.Window.__init__(self) self.scaleX = ( float(self.getWidth()) / float(720) ) self.scaleY = ( float(self.getHeight()) / float(576) ) self.addControl(xbmcgui.ControlImage(0,0,720,480, Root + "sf_background.jpg")) self.vidlist = xbmcgui.ControlList(int(185 * self.scaleX),int(160 * self.scaleY), int(490 * self.scaleX), int(365 * self.scaleY)) #self.vidlist = xbmcgui.ControlList(100,100,660,420) self.addControl(self.vidlist) self.getsfList() def getsfList(self): dialog = xbmcgui.Dialog() progress = xbmcgui.DialogProgress() progress.create("Adult Swim Fix", "Fetching video index...") progress.update(10) try: #Open socket with page URL page = urllib.urlretrieve(url) progress.update(30) file = open(page[0]) progress.update(60) page = file.read() regexp = re.compile('<.*?>(.*?)</.*?><.*?>(.*?)</.*?><.*?>(.*?)</.*?>', re.DOTALL) progress.update(90) lines = regexp.findall(page) progress.close() for line in lines: self.vidlist.addItem(xbmcgui.ListItem('%s - %s'%(line[0].strip(),line[1].strip()))) self.setFocus(self.vidlist) except: progress.close() dialog.ok("Adult Swim Fix","Could not retrieve page") def onControl(self, control): if control == self.vidlist: selected = self.vidlist.getSelectedPosition() xbmc.Player().play(lines[selected][2]) else: returnDisplay_Main = sf_Main()Display_Main.doModal()del Display_Main