def resolve(url): try: try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0] except: referer = url channel = urlparse.urlparse(url).path channel = re.compile('/([\w]+)').findall(channel)[-1] domain = urlparse.urlparse(url).netloc pageUrl = urlparse.urljoin('http://%s' % domain, channel) if 'instagib' in domain: playpath = 'instagib_%s' % channel elif 'breakers' in domain: playpath = 'btv_%s' % channel elif 'vapers' in domain: playpath = 'vtv_%s' % channel else: playpath = 'live_%s' % channel import requests s = requests.session() result = s.get(pageUrl).text swfUrl = re.compile('"(/\d+/swf/[0-9A-Za-z]+\.swf)').findall(result)[0] swfUrl = urlparse.urljoin(pageUrl, swfUrl) s.headers = {'User-agent':client.agent(),'X-Requested-With':constants.get_shockwave(),'Accept-Encoding':'gzip, deflate, lzma, sdch','Connection':'keep-alive','Host':'mvn.vaughnsoft.net','Referer':'http://vaughnlive.tv/' + channel} infoUrl = 'http://mvn.vaughnsoft.net/video/edge/mnv-%s' % (playpath) result = s.get(infoUrl).text streamer = re.compile('(.+?);').findall(result)[0] streamer = 'rtmp://%s/live' % streamer app = re.compile('mvnkey-(.+)').findall(result)[0].replace("0m0", "") app = 'live?%s' % app url = '%s app=%s playpath=%s pageUrl=http://vaughnlive.tv/ swfUrl=%s live=true flashver=%s timeout=15' % (streamer, app, playpath,swfUrl,constants.flash_ver()) return url except: return
def resolve(url): try: page = url try: referer = urlparse.parse_qs( urlparse.urlparse(url).query)['referer'][0] except: referer = url if 'streamcdn' not in url: page = urlparse.parse_qs(urlparse.urlparse(url).query)['id'][0] page = 'http://p2pcast.tech/stream.php?id=%s&osr=2&live=0&p2p=0&stretching=uniform' % page result = client.request(page, referer=referer) if 'streamcdn' not in url: token = client.request('http://p2pcast.tech/getTok.php', referer=page, headers={ 'User-Agent': client.agent(), 'X-Requested-With': 'XMLHttpRequest' }) try: token = json.loads(token)['token'] except: token = '' url = re.compile('murl\s*=\s*[\'|\"](.+?)[\'|\"]').findall(result)[0] url = base64.b64decode(url) + token url += '|Referer=' + page + '&User-Agent=%s&X-Requested-With=%s&Host=%s' % ( client.agent(), constants.get_shockwave(), urlparse.urlparse(url).netloc) return url except: return
def resolve(url): try: page = url try: referer = urlparse.parse_qs( urlparse.urlparse(url).query)['referer'][0] except: referer = url if 'streamcdn' not in url: page = urlparse.parse_qs(urlparse.urlparse(url).query)['id'][0] page = 'http://p2pcast.tech/stream.php?id=%s&osr=2&live=0&p2p=0&stretching=uniform' % page result = client.request(page, referer=referer) if 'streamcdn' not in url: token = client.request( 'http://p2pcast.tech/getTok.php', referer=page, headers={ 'User-Agent': client.agent(), 'X-Requested-With': 'XMLHttpRequest' }) try: token = json.loads(token)['token'] except: token = '' url = re.compile('murl\s*=\s*[\'|\"](.+?)[\'|\"]').findall(result)[0] url = base64.b64decode(url) + token url += '|Referer=' + page + '&User-Agent=%s&X-Requested-With=%s&Host=%s' % ( client.agent(), constants.get_shockwave(), urlparse.urlparse(url).netloc) return url except: return
def resolve(url): try: try: referer = urlparse.parse_qs( urlparse.urlparse(url).query)['referer'][0] except: referer = url id = urlparse.parse_qs(urlparse.urlparse(url).query)['id'][0] host = urlparse.urlparse(url).netloc url = 'http://www.%s/jwplayer6.php?channel=%s&vw=700&vh=480' % (host, id) result = client.request(url, referer=referer) json_url = re.findall('getJSON\([\"\']([^\"\']+)', result)[0] j = json.loads(client.request(json_url, referer=url)) token, file, rtmp = j['token'], j['streamname'], j['rtmp'] ur = rtmp + '/' + file + '/chunklist.m3u8' ur += '|%s' % urllib.urlencode( { 'User-agent': client.agent(), 'X-Requested-With': constants.get_shockwave(), 'Referer': url, 'Host': urlparse.urlparse(rtmp).netloc }) return ur except: return
def resolve(url): try: try: referer = urlparse.parse_qs( urlparse.urlparse(url).query)['referer'][0] except: referer = url id = urlparse.parse_qs(urlparse.urlparse(url).query)['id'][0] result = client.request('http://theactionlive.com/livegamecr.js', referer=referer) url = re.findall('.*\W(\w+.php).*', result)[0] page = 'http://theactionlive.com/' + url + '?id=' + id + '&width=620&height=490&stretching=' result = client.request(page, referer=referer) id = re.findall(".*id=['\"]([^\"']+).*", result)[0] result = client.request('http://biggestplayer.me/playercr.js', referer=page) url = re.findall('.*\W(\w+.php).*', result)[0] page2 = 'http://biggestplayer.me/' + url + '?id=' + id + '&width=620&height=490' result = client.request(page2, referer=page) url = re.findall('.*(http[^"\']+\.m3u8[^"\']*).*', result)[0] url += '|%s' % urllib.urlencode( { 'Referer': page2, 'User-agent': client.agent(), 'X-Requested-With': constants.get_shockwave() }) return url except: return
def resolve(url): try: try: referer = urlparse.parse_qs( urlparse.urlparse(url).query)['referer'][0] except: referer = url id = urlparse.parse_qs(urlparse.urlparse(url).query)['id'][0] page = client.request(url) page = re.findall('.*?src=([^"\' ]+).*', page)[0] page = page + id + '&vw=650&vh=500' result = client.request(page, referer=referer) url = re.findall('.*(http[^"\']+\.m3u8[^"\']*).*', result)[0] url += '|%s' % urllib.urlencode( { 'User-Agent': client.agent(), 'Referer': page, 'X-Requested-With': constants.get_shockwave() }) return url except: return
def resolve(url): try: try: referer = urlparse.parse_qs( urlparse.urlparse(url).query)['referer'][0] except: referer = url url = liveresolver_utils.remove_referer(url) result = client.request(url, referer=referer) json_url = re.findall('getJSON\([\"\']([^\"\']+)', result)[0] j = json.loads(client.request(json_url, referer=url)) rtmp = j['rtmp'] file = j['streamname'] u2 = 'http://' + rtmp + '/player.php?ch=' + file result = client.request(u2, referer=url) auth = re.findall('.*?(c2V[^"\'&]+)', result)[0] url = 'http://' + rtmp + '/live/' + file + '.m3u8?token=' + auth url += '|%s' % urllib.urlencode( { 'Referer': u2, 'User-agent': client.agent(), 'X-Requested-With': constants.get_shockwave() }) return url except: return
def resolve(url): try: result = client.request(url) uri = re.findall("decodeURIComponent\(atob\('(.+?)'", result)[0] while not ('http') in uri: uri = base64.b64decode(uri) if not ('http') in uri: uri = re.findall("'(.+?)'", uri)[0] else: pass murl = re.findall('"src":"(.+?)"', uri)[0] result = client.request(murl, referer=url) base = urlparse.urlparse(murl).netloc items = client.parseDOM(result, 'video', attrs={'id': 'player'}) url = client.parseDOM(items, 'source', ret='src')[0] if ('http') in url: return url + test if url[0] != '/': url = 'http://%s/' % base + url else: url = 'http://%s' % base + url headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.63 Safari/537.36 OPR/38.0.2220.25 (Edition beta)', 'Referer': murl, 'X-Requested-With': constants.get_shockwave(), 'Host': base, 'Connection': 'keep-alive', 'Accept-encoding': 'gzip, deflate, lzma, sdch' } r2 = client.request(url, headers=headers) u2 = re.findall('(http://[^\s]+)', r2)[0] return u2 + '|%s' % urllib.urlencode({ 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.63 Safari/537.36 OPR/38.0.2220.25 (Edition beta)', 'Referer': url, 'X-Requested-With': constants.get_shockwave() }) except: return
def resolve(url): try: try: referer = urlparse.parse_qs( urlparse.urlparse(url).query)['referer'][0] except: referer = url result = client.request(url, referer=referer) file = re.findall('.*(http[^"\']+\.m3u8[^"\']*).*', result)[0] url = file + '|Referer=' + referer + '&User-Agent=' + client.agent( ) + '&X-Requested-With=' + constants.get_shockwave() return url except: return
def resolve(url): try: try: referer = urlparse.parse_qs( urlparse.urlparse(url).query)['referer'][0] except: referer = url channel = urlparse.urlparse(url).path channel = re.compile('/([\w]+)').findall(channel)[-1] domain = urlparse.urlparse(url).netloc pageUrl = urlparse.urljoin('http://%s' % domain, channel) if 'instagib' in domain: playpath = 'instagib_%s' % channel elif 'breakers' in domain: playpath = 'btv_%s' % channel elif 'vapers' in domain: playpath = 'vtv_%s' % channel else: playpath = 'live_%s' % channel import requests s = requests.session() result = s.get(pageUrl).text swfUrl = re.compile('"(/\d+/swf/[0-9A-Za-z]+\.swf)').findall(result)[0] swfUrl = urlparse.urljoin(pageUrl, swfUrl) s.headers = { 'User-agent': client.agent(), 'X-Requested-With': constants.get_shockwave(), 'Accept-Encoding': 'gzip, deflate, lzma, sdch', 'Connection': 'keep-alive', 'Host': 'mvn.vaughnsoft.net', 'Referer': 'http://vaughnlive.tv/' + channel } infoUrl = 'http://mvn.vaughnsoft.net/video/edge/mnv-%s' % (playpath) result = s.get(infoUrl).text streamer = re.compile('(.+?);').findall(result)[0] streamer = 'rtmp://%s/live' % streamer app = re.compile('mvnkey-(.+)').findall(result)[0].replace("0m0", "") app = 'live?%s' % app url = '%s app=%s playpath=%s pageUrl=http://vaughnlive.tv/ swfUrl=%s live=true flashver=%s timeout=15' % ( streamer, app, playpath, swfUrl, constants.flash_ver()) return url except: return
def resolve(url): try: try: referer = urlparse.parse_qs( urlparse.urlparse(url).query)['referer'][0] except: referer = url url = liveresolver_utils.remove_referer(url) result = client.request(url, referer=referer, mobile=True) r2 = client.request('http://cdn.mipspublisher.com:1935/loadbalancer') ipad = re.findall('redirect=([^$]+)', r2)[0] m3u8 = 'http://' + ipad + re.findall('[\"\'](:.+?m3u8[^\"\']+)', result)[0] m3u8 += '|%s' % urllib.urlencode( { 'Referer': referer, 'User-agent': client.agent(), 'X-Requested-With': constants.get_shockwave() }) return m3u8 except: return
def resolve(url): try: try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0] except: referer = url id = urlparse.parse_qs(urlparse.urlparse(url).query)['id'][0] page = client.request(url) page = re.findall('.*?src=([^"\' ]+).*',page)[0] page = page + id + '&vw=650&vh=500' result = client.request(page,referer=referer) url = re.findall('.*(http[^"\']+\.m3u8[^"\']*).*',result)[0] url += '|%s' % urllib.urlencode({'User-Agent': client.agent(), 'Referer': page,'X-Requested-With':constants.get_shockwave()}) return url except: return
def resolve(url): try: s = requests.Session() try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0] except: referer= url ref = liveresolver_utils.remove_referer(url) result = s.get(url, headers={'Referer':referer,'User-agent':client.agent()}).text curl = re.findall('.*url\s*=\s*["\']([^"\']+).*',result)[0] url = base64.b64decode(curl) token = json.loads(s.get('http://bro.adca.st/getToken.php').text)['token'] url+= '2iJlpi2DMMr7q_DP8E9d9g' url+='|%s' % urllib.urlencode({'User-agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36','Referer':ref,'X-Requested-With':constants.get_shockwave()}) return url except: return
def resolve(url): try: try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0] except: referer=url id = urlparse.parse_qs(urlparse.urlparse(url).query)['id'][0] host = urlparse.urlparse(url).netloc url = 'http://www.%s/jwplayer6.php?channel=%s&vw=700&vh=480'%(host,id) result = client.request(url, referer=referer) json_url = re.findall('getJSON\([\"\']([^\"\']+)',result)[0] j = json.loads(client.request(json_url, referer=url)) token,file,rtmp = j['token'],j['streamname'],j['rtmp'] ur = rtmp+'/'+file+'/chunklist.m3u8' ur += '|%s' %urllib.urlencode({'User-agent':client.agent(),'X-Requested-With':constants.get_shockwave(),'Referer':url,'Host':urlparse.urlparse(rtmp).netloc}) return ur except: return
def resolve(url): try: try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0] except: referer=url url = liveresolver_utils.remove_referer(url) result = client.request(url, referer=referer, mobile=True) r2 = client.request('http://cdn.mipspublisher.com:1935/loadbalancer') ipad = re.findall('redirect=([^$]+)',r2)[0] m3u8 = 'http://' + ipad + re.findall('[\"\'](:.+?m3u8[^\"\']+)',result)[0] m3u8 += '|%s' % urllib.urlencode({'Referer':referer,'User-agent':client.agent(),'X-Requested-With':constants.get_shockwave()}) return m3u8 except: return
def resolve(url): try: result = client.request(url) uri = re.findall("decodeURIComponent\(atob\('(.+?)'",result)[0] while not ('http') in uri: uri = base64.b64decode(uri) if not ('http') in uri: uri = re.findall("'(.+?)'",uri)[0] else: pass murl = re.findall('"src":"(.+?)"',uri)[0] result = client.request(murl,referer = url) base = urlparse.urlparse(murl).netloc items = client.parseDOM(result, 'video', attrs={'id': 'player'}) url = client.parseDOM(items, 'source', ret='src')[0] if ('http') in url: return url+test if url[0]!='/': url='http://%s/'%base+url else: url='http://%s'%base+url headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.63 Safari/537.36 OPR/38.0.2220.25 (Edition beta)' ,'Referer':murl,'X-Requested-With':constants.get_shockwave(),'Host':base, 'Connection':'keep-alive','Accept-encoding':'gzip, deflate, lzma, sdch'} r2 = client.request(url,headers=headers) u2 = re.findall('(http://[^\s]+)',r2)[0] return u2 + '|%s' % urllib.urlencode({'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.63 Safari/537.36 OPR/38.0.2220.25 (Edition beta)' ,'Referer':url,'X-Requested-With':constants.get_shockwave()}) except: return
def resolve(url): try: try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0] except: referer = url result = client.request(url, referer = referer) file = re.findall('.*(http[^"\']+\.m3u8[^"\']*).*',result)[0] url = file+'|Referer='+referer+'&User-Agent=' + client.agent() + '&X-Requested-With=' + constants.get_shockwave() return url except: return
def resolve(url): #try: s = requests.Session() try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0] except: referer= url ref = liveresolver_utils.remove_referer(url) result = s.get(url, headers={'Referer':referer,'User-agent':client.agent()}).text log(result) curl = re.findall('curl\s*=\s*[\"\']([^\"\']+)',result)[0] url = base64.b64decode(curl) token = json.loads(s.get('http://bro.adcast.tech/getToken.php').text)['token'] url+=token url+='|%s' % urllib.urlencode({'User-agent':client.agent(),'Referer':ref,'X-Requested-With':constants.get_shockwave(),'Host':urlparse.urlparse(url).netloc}) return url
def resolve(url): try: try: cid = urlparse.parse_qs(urlparse.urlparse(url).query)['cid'][0] except: cid = re.compile('channel/(.+?)(?:/|$)').findall(url)[0] try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0] except: referer='http://castalba.tv' url = 'http://castalba.tv/embed.php?cid=%s&wh=600&ht=380&r=%s'%(cid,urlparse.urlparse(referer).netloc) pageUrl=url result = client.request(url, referer=referer,mobile=True) result = decryptionUtils.doDemystify(result) result=urllib.unquote(result) var = re.compile('var\s(.+?)\s*=\s*[\'\"](.+?)[\'\"]').findall(result) var_dict = dict(var) if 'm3u8' in result: url = re.compile('(?:var\s*)?file.+?\s*=\s*(?:unescape\()[\'\"](.+?)[\'\"]').findall(result)[-1] url = 'http://' + url + '.m3u8' url += '|%s' % urllib.urlencode({'User-Agent': client.agent(), 'Referer': url,'X-Requested-With':constants.get_shockwave()}) log("Castalba: Found m3u8 url: " + url) else: try: filePath = re.compile("'file'\s*:\s*(?:unescape\()?'(.+?)'").findall(result)[0] except: file = re.findall('(?:var\s*)?file\s*=\s*(?:unescape\()?(?:\'|\")(.+?)(?:\'|\")',result)[-1] try: file2 = re.findall("'file':\s*unescape\(file\)\s*\+\s*unescape\('(.+?)'\)",result)[0] filePath = file+file2 except: filePath = file swf = re.compile("'flashplayer'\s*:\s*\"(.+?)\"").findall(result)[0] sm = re.findall("'streamer':(.+?),",result)[0] strm_funcs = re.findall('function\s*(.+?)\s*\{([^\}]+)',result,flags=re.DOTALL) for f in strm_funcs: if f[0] in ['(p,a,c,k,e,r)','()']: continue if '%s'%f[0] in sm: strm_func = f[1] break strm_func = re.sub('\s//[^;]+','',strm_func) streamer = 'rtmp://' + re.findall('.*["\'/](\d{1,3}\.\d{1,3}\.\d{1,3}\.[^"\'/]+)["\'/]',strm_func)[0] + '/live' streamer = streamer.replace('///','//') url = streamer + ' playpath=' + filePath +' swfUrl=' + swf + ' flashver=' + constants.flash_ver() +' live=true timeout=15 swfVfy=true pageUrl=' + pageUrl log("Castalba: Found rtmp link: " + url) return url except: log("Castalba: Resolver failed. Returning...") return
def resolve(url): #try: s = requests.Session() try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0] except: referer= url ref = liveresolver_utils.remove_referer(url) result = s.get(url, headers={'Referer':referer,'User-agent':client.agent()}).text curl = re.findall('curl\s*=\s*[\"\']([^\"\']+)',result)[0] url = base64.b64decode(curl) token = json.loads(s.get('http://bro.adcast.tech/getToken.php').text)['token'] url+= 'wfNz6Pz_jNZfR8wmB8JEPw' url+='|%s' % urllib.urlencode({'User-agent':'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36','Referer':ref,'X-Requested-With':constants.get_shockwave(),'Host':urlparse.urlparse(url).netloc,'Accept-Encoding':'gzip, deflate, lzma, sdch'}) return url
def resolve(url): #try: try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0] except: referer = url id = urlparse.parse_qs(urlparse.urlparse(url).query)['id'][0] result = client.request('http://theactionlive.com/livegamecr.js', referer=referer) log(result) url = re.findall('.*\W(\w+.php).*',result)[0] page='http://theactionlive.com/'+url+'?id='+id+'&width=620&height=490&stretching=' result = client.request(page, referer=referer) id=re.findall(".*id=['\"]([^\"']+).*",result)[0] result = client.request('http://biggestplayer.me/playercr.js', referer=page) url = re.findall('.*\W(\w+.php).*',result)[0] page2='http://biggestplayer.me/'+url+'?id='+id+'&width=620&height=490' result = client.request(page2, referer=page) url=re.findall('.*(http[^"\']+\.m3u8[^"\']*).*',result)[0] url+='|%s' % urllib.urlencode({'Referer':page2, 'User-agent':client.agent(), 'X-Requested-With':constants.get_shockwave()}) return url
def resolve(url): try: try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0] except: referer= url url = liveresolver_utils.remove_referer(url) result = client.request(url, referer=referer) json_url = re.findall('getJSON\([\"\']([^\"\']+)',result)[0] j = json.loads(client.request(json_url, referer=url)) rtmp = j['rtmp'] file = j['streamname'] u2 = 'http://'+rtmp+'/player.php?ch='+file result = client.request(u2, referer=url) auth = re.findall('.*?(c2V[^"\'&]+)',result)[0] url = 'http://'+rtmp+'/live/'+file+'.m3u8?token='+auth url += '|%s' %urllib.urlencode({'Referer':u2,'User-agent':client.agent(),'X-Requested-With':constants.get_shockwave()}) return url except: return