def parse_cb(self, page, options): #page = content.decode('GBK').encode('UTF-8') page = convert_to_utf8(page) name_match = name_re.search(page) if not name_match: moonplayer.warn('Cannot get video name.') return self.name = name_match.group(1) if options & moonplayer.OPT_QL_SUPER: i = 5 elif options & moonplayer.OPT_QL_HIGH: i = 3 else: i = 2 vlist = [None] * 6 iid_match = iid_re.search(page) while iid_match: (pt, k) = iid_match.group(1, 2) pt = int(pt) if pt < 6: if vlist[pt] == None: vlist[pt] = [] vlist[pt].append(k) iid_match = iid_re.search(page, iid_match.end(0)) while i >= 0: if vlist[i]: self.keys = vlist[i] self.result = [] url = 'http://v2.tudou.com/f?id=' + self.keys[0] moonplayer.get_url(url, self.parse_keys, options) return i -= 1 moonplayer.warn('Fail!')
def parse_cb(page, options): #page = content.decode('GBK').encode('UTF-8') page = convert_to_utf8(page) name_match = name_re.search(page) if not name_match: moonplayer.warn('Cannot get video name.') return name = name_match.group(1) if options & moonplayer.OPT_QL_SUPER: i = 5 elif options & moonplayer.OPT_QL_HIGH: i = 3 else: i = 2 vlist = [None] * 6 iid_match = iid_re.search(page) while iid_match: (pt, k) = iid_match.group(1, 2) pt = int(pt) if pt < 6: vlist[pt] = k iid_match = iid_re.search(page, iid_match.end(0)) while i >= 0: if vlist[i]: url = 'http://v2.tudou.com/f?id=' + vlist[i] moonplayer.get_url(url, parse_cb2, (name, options)) return i -= 1 moonplayer.warn('Fail!')
def parse_cb(self, page, options): #page = content.decode('GBK').encode('UTF-8') page = convert_to_utf8(page) name_match = name_re.search(page) if not name_match: moonplayer.warn('Cannot get video name.') return self.name = name_match.group(1) if options & moonplayer.OPT_QL_1080P: i = 6 if options & moonplayer.OPT_QL_SUPER: i = 5 elif options & moonplayer.OPT_QL_HIGH: i = 3 else: i = 2 vlist = [None] * 7 iid_match = iid_re.search(page) vcode_match = vcode_re.search(page) # Link to youku if vcode_match and not iid_match: url = 'http://v.youku.com/v_show/id_%s.html' % vcode_match.group(1) flvcd_parser.parse(url, options) return while iid_match: (pt, k) = iid_match.group(1, 2) pt = int(pt) if pt == 99: # Real quality pt = 6 if pt <= 6: if vlist[pt] == None: vlist[pt] = [] vlist[pt].append(k) iid_match = iid_re.search(page, iid_match.end(0)) while i >= 0: if vlist[i]: self.keys = vlist[i] self.result = [] url = 'http://v2.tudou.com/f?id=' + self.keys[0] moonplayer.get_url(url, self.parse_keys, options) return i -= 1 moonplayer.warn('Fail!')
def search_album_cb(page, keyword): page = convert_to_utf8(page) links = list_links(page, 'http://www.tudou.com/playlist/id/', keyword) moonplayer.show_list(links)