示例#1
0
def resolve(url):
    try:
        try:
            referer = urlparse.parse_qs(
                urlparse.urlparse(url).query)['referer'][0]
        except:
            referer = url

        page = urlparse.parse_qs(urlparse.urlparse(url).query)['a'][0]
        page = 'http://zerocast.tv/embed.php?a=%s&id=&width=640&height=480&autostart=true&strech=exactfit' % page

        result = client.request(page, referer=referer)

        result = client.request(page, referer=referer, close=False)
        result = re.compile('url\s*=\s*"(.*?)"').findall(result)[0]
        result = base64.b64decode(result)

        if result.startswith('rtmp'):
            return '%s pageUrl=%s live=1 timeout=20' % (result, page)

        elif '.m3u8' in result:
            chunk = client.request(result)
            chunk = re.compile('(chunklist_.+)').findall(chunk)[0]
            return result.split('.m3u8')[0].rsplit('/', 1)[0] + '/' + chunk

    except:
        return
示例#2
0
def resolve(url):

    try:

        try:
            referer = re.findall('referer=([^&$]+)', url)[0]
        except:
            referer = url

        id = re.findall('embed/(\d+)', url)[0]
        page = 'http://www.streamlive.to/embedplayer_new2.php?width=620&height=470&channel=%s&autoplay=true' % id

        result = client.request(page, referer=referer)

        token_url = re.compile('getJSON\("(.+?)"').findall(result)[0]
        if 'http' not in token_url:
            token_url = 'http:' + token_url
        r2 = client.request(token_url, referer=referer)
        token = json.loads(r2)["token"]

        file = re.compile(
            '(?:[\"\'])?file(?:[\"\'])?\s*:\s*(?:\'|\")(.+?)(?:\'|\")'
        ).findall(result)[0].replace('.flv', '')
        rtmp = re.compile('streamer\s*:\s*(?:\'|\")(.+?)(?:\'|\")').findall(
            result)[0].replace(r'\\', '\\').replace(r'\/', '/')
        app = re.compile('.*.*rtmp://[\.\w:]*/([^\s]+)').findall(rtmp)[0]
        url = rtmp + ' app=' + app + ' playpath=' + file + ' swfUrl=http://www.streamlive.to/ads/streamlive.swf flashver=' + constants.flash_ver(
        ) + ' live=1 timeout=15 token=' + token + ' swfVfy=1 pageUrl=' + page

        return url
    except:
        return
示例#3
0
def resolve(url):
    try:
        try:
            referer = urlparse.parse_qs(
                urlparse.urlparse(url).query)['referer'][0]
        except:
            referer = url
        url = url.replace(referer, '').replace('?referer=', '')
        result = client.request(url, referer=referer)
        swf = 'http://www.janjuaplayer.com' + re.compile(
            'SWFObject\(\"(.+?)".*?').findall(result)[0]
        vars = re.compile('id=(\d+)&s=([^&\'"]+).*?&pk=([^&\'"]+).*').findall(
            result)[0]
        id, channel, pk = vars[0], vars[1], vars[2]
        page2 = 'http://www.janjuapublisher.com:1935/loadbalancer?' + channel
        result = client.request(
            page2,
            referer='http://www.janjuaplayer.com/resources/scripts/eplayer.swf'
        )
        ip = re.compile(".*redirect=([\.\d]+).*").findall(result)[0]
        rtmp = 'rtmp://%s/live/' % ip
        url = '%s playPath=%s?id=%s&pk=%s swfVfy=1 timeout=10 conn=S:OK live=true swfUrl=%s flashver=' + constants.flash_ver(
        ) + ' pageUrl=%s' % (rtmp, channel, id, pk, swf, url)
        return url
    except:
        return
示例#4
0
文件: zoptv.py 项目: GenieTv/Genie_Tv
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
示例#5
0
文件: zoomtv.py 项目: bialagary/mw
def resolve(url):
	#swf='http://static.zoomtv.me/player/jwplayer.6.5.3.swf'
    referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
    headers = { 'referer': referer,
                             'Accept' : 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
                             'Connection' : 'keep-alive',
                             'Host' : 'www.zoomtv.me',
                             'Origin' : urlparse.urlparse(referer).netloc
                             }
    fid = urlparse.parse_qs(urlparse.urlparse(url).query)['v'][0]
    cx = urlparse.parse_qs(urlparse.urlparse(url).query)['cx'][0]
    pid = urlparse.parse_qs(urlparse.urlparse(url).query)['pid'][0]
    url = 'http://www.zoomtv.me/embed.php?v=%s&vw=660&vh=450'%fid
    post_data = {'cx' : cx,
    			'lg' : '1' ,
    			'pid' : pid }
    result = client.request(url, post=urllib.urlencode(post_data),headers = headers, mobile=True)

    result = decryptionUtils.doDemystify(result)
    print(result)
    rtmp = re.findall('(rtmp://.+?/zmtvliveme)',result)[0]
    junk,file = re.findall('file',result)[0]
    junk,ts = re.findall('.*[^\w](\w+)\s*=.{0,20}(1[\d]{9})\b.*ts.{0,20}\1.*',result)[0]
    junk,sg = re.findall('.*?[^\w](\w+)\s*=.{0,20}([a-z0-9]{32})\b.*sg.{0,20}\1.*',result)[0]
    res  = client.request(req,referer='http://static.zoomtv.me/player/jwplayer.6.7.4.swf')
    
    if not rtmp:
        rtmp = 'rtmp://94.102.49.62:1935/zmliveme'
    url = rtmp + ' playpath=' + file + ' swfUrl=http://static.zoomtv.me/player/jwplayer.6.7.4.swf flashver=WIN\2019,0,0,245 conn=S:' + file + ' conn=S:' + ts + ' conn=S:' + sg + ' conn=S:V>JWhui^@2ESdu0?}>AN live=1 timeout=15 token=Q!lrB@G1)ww(-dQ4J4 swfVfy=1 pageUrl=' + url
    return url
示例#6
0
def resolve(url):
    #try:
    try:
        referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
    except:
        referer = url

    try:
        channel = urlparse.parse_qs(urlparse.urlparse(url).query)['channel'][0]
    except:
        channel = re.compile('/embed/(\d+)&').findall(url)[0]

    page = 'http://www.iguide.to/embedplayer.php?width=720&height=480&channel=%s&autoplay=true' % channel
    print('x', page)
    result = client.request(page, referer=referer)
    print(result)
    token_url = re.compile('\$.getJSON\("(.+?)", function\(json\){').findall(
        result)[0]
    token = json.loads(client.request(token_url, referer=referer))['token']

    file = re.compile('(?:\'|\")?file(?:\'|\")?\s*:\s*(?:\'|\")(.+?)(?:\'|\")'
                      ).findall(result)[0].replace('.flv', '')
    rtmp = re.compile(
        '(?:\'|\")?streamer(?:\'|\")?\s*:\s*(?:\'|\")(.+?)(?:\'|\")').findall(
            result)[0].replace(r'\\', '\\').replace(r'\/', '/')
    app = re.compile('.*.*rtmp://[\.\w:]*/([^\s]+)').findall(rtmp)[0]

    url = rtmp + ' playpath=' + file + ' swfUrl=http://www.iguide.to/player/secure_player_iguide_token.swf flashver=WIN\\2020,0,0,228 live=1 timeout=15 token=' + token + ' swfVfy=1 pageUrl=' + page
    return url
示例#7
0
def resolve(url):
    try:

        try:
            referer = urlparse.parse_qs(
                urlparse.urlparse(url).query)['referer'][0]
        except:
            referer = url

        url = liveresolver_utils.remove_referer(url)
        pageUrl = url

        result = client.request(url, referer=referer)

        id, channel, pk = re.findall(
            'id=(\d+)&s=([^&\'"]+).+?&pk=([^&\'"]+).*', result)[0]
        r2 = client.request(
            'http://www.streamifypublisher.com:1935/loadbalancer?%s' % channel,
            pageUrl)
        ip = r2.split('=')[1]

        url = 'rtmp://%s/live' % ip
        url = url + ' playPath=' + channel + '?id=' + id + '&pk=' + pk + ' swfVfy=1 timeout=15 live=true conn=S:OK swfUrl=http://www.streamifyplayer.com/resources/scripts/eplayer.swf flashver=' + constants.flash_ver(
        ) + ' pageUrl=' + pageUrl

        return url

    except:
        return
示例#8
0
def resolve(url):
    try:
        try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
        except: referer = url

        page=url
        result = client.request(url, referer=referer)
        url = re.findall('src="(http://zerocast.+?)"',result)[0]
        result = client.request(url)
        result = re.compile('url\s*=\s*(?:\'|\")(.*?)(?:\'|\")').findall(result)[0]
        result = client.request(result)
        result = urllib.unquote(result)
        print(result)
        result = re.compile('file\s*:\s*(?:unescape\()?(?:\'|\")(.*?)(?:\'|\")').findall(result)[0]
        if result.startswith('rtmp'):
            return '%s pageUrl=%s live=1 timeout=20' % (result, page)

        elif '.m3u8' in result:
            chunk = client.request(result)
            chunk = re.compile('(chunklist_.+)').findall(chunk)[0]
            url = result.split('.m3u8')[0].rsplit('/', 1)[0] + '/' + chunk
            url += '|%s' % urllib.urlencode({'User-Agent': client.agent()})
            return url

    except:
        return
示例#9
0
def resolve(url):
    try:
        try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
        except: referer = url

        if 'chan=' in url:
            result = client.request(url, referer=referer)
            url = re.findall('<script\stype=[\'"]text/javascript[\'"]\ssrc=[\'"](.+?)[\'"]>', result)[0]

        r = re.findall('.+?a=([0-9]+)', url)[0]

        url = 'http://zerocast.tv/embed.php?a=%s&id=&width=640&height=480&autostart=true&strech=' % r

        result = client.request(url, referer=referer)

        r = re.findall('curl\s*=\s*[\'"](.+?)[\'"]', result)
        r += re.findall('file\s*:\s*["\'](.+?)["\']', result)
        r = r[0].decode('base64', 'strict')

        if r.startswith('rtmp'):
            return '%s pageUrl=%s live=1 timeout=30' % (r, url)

        elif '.m3u8' in r:
            chunk = client.request(r)
            chunk = re.compile('(chunklist_.+)').findall(chunk)[0]
            url = r.split('.m3u8')[0].rsplit('/', 1)[0] + '/' + chunk
            url += '|%s' % urllib.urlencode({'User-Agent': client.agent()})
            return url
    except:
        return
def resolve(url):
    
    try:
        
        try: 
            referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
            url = url.replace(referer,'').replace('?referer=','').replace('&referer=','')
        except:
            referer = url

        id = re.findall('embed/(\d+)',url)[0]
        page = 'http://www.streamlive.to/embedplayer_new2.php?width=620&height=470&channel=%s&autoplay=true'%id
        


        result = client.request(page,headers={'referer':'http://www.streamlive.to', 'Content-type':'application/x-www-form-urlencoded', 'Origin': 'http://www.streamlive.to', 'Host':'www.streamlive.to', 'User-agent':client.agent()})
        log(result)

        token_url = re.compile('getJSON\("(.+?)"').findall(result)[0]
        if 'http' not in token_url:
            token_url = 'http:' + token_url
        r2 = client.request(token_url,referer=referer)
        token = json.loads(r2)["token"]

        file = re.compile('(?:[\"\'])?file(?:[\"\'])?\s*:\s*(?:\'|\")(.+?)(?:\'|\")').findall(result)[0].replace('.flv','')
        rtmp = re.compile('streamer\s*:\s*(?:\'|\")(.+?)(?:\'|\")').findall(result)[0].replace(r'\\','\\').replace(r'\/','/')
        app = re.compile('.*.*rtmp://[\.\w:]*/([^\s]+)').findall(rtmp)[0]
        url=rtmp + ' app=' + app + ' playpath=' + file + ' swfUrl=http://www.streamlive.to/ads/streamlive.swf flashver=' + constants.flash_ver() + ' live=1 timeout=15 token=' + token + ' swfVfy=1 pageUrl='+page

        
        return url
    except:
        return
示例#11
0
def resolve(url):
    try:
        pageUrl = url
        try:
            referer = urlparse.parse_qs(
                urlparse.urlparse(url).query)['referer'][0]
        except:
            referer = url

        result = client.request(
            url,
            referer=referer,
            headers={'Host': urlparse.urlparse(url).netloc})
        page2 = re.findall('.*src=["\']([^"\']+)["\'].*', result)[0]
        result = client.request(page2, referer=referer)
        result = decryptionUtils.doDemystify(result)

        vs = re.findall('type="hidden" id=".+?" value="(.+?)"', result)
        for v in vs:
            vd = base64.b64decode(v)
            if 'm3u8' in vd:
                file = vd
            if vd.startswith('//'):
                ref = 'http:' + vd
        url = file + '|%s' % urllib.urlencode({
            'Referer': ref,
            'User-agent': client.agent()
        })
        return url
    except:
        return
示例#12
0
def resolve(url):
    #try:
    try:
        referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
    except:
        referer = url

    try:
        channel = urlparse.parse_qs(urlparse.urlparse(url).query)['channel'][0]
    except:
        channel = re.compile('/embed/(\d+)&').findall(url)[0]

    page = 'http://www.iguide.to/embedplayer_new.php?width=700&height=410&channel=%s&autoplay=true' % channel

    log(page)
    headers = {'Host': 'www.iguide.to', 'Connection': 'keep-alive'}
    result = client.request(page, referer=referer, headers=headers)
    log(result)
    token_url = re.compile('\$.getJSON\("(.+?)", function\(json\){').findall(
        result)[0]
    token = json.loads(client.request(token_url, referer=referer))['token']

    file = re.compile('(?:\'|\")?file(?:\'|\")?\s*:\s*(?:\'|\")(.+?)(?:\'|\")'
                      ).findall(result)[0].replace('.flv', '')
    rtmp = re.compile(
        '(?:\'|\")?streamer(?:\'|\")?\s*:\s*(?:\'|\")(.+?)(?:\'|\")').findall(
            result)[0].replace(r'\\', '\\').replace(r'\/', '/')
    app = re.compile('.*.*rtmp://[\.\w:]*/([^\s]+)').findall(rtmp)[0]

    url = rtmp + ' playpath=' + file + ' swfUrl=http://www.iguide.to/player/secure_player_iguide_token.swf flashver=' + constants.flash_ver(
    ) + ' live=1 timeout=15 token=' + token + ' swfVfy=1 pageUrl=' + page
    return url
示例#13
0
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
示例#14
0
def resolve(url):
    try:
        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

        result = client.request(pageUrl, referer=pageUrl)

        swfUrl = re.compile('"(/\d+/swf/[0-9A-Za-z]+\.swf)').findall(result)[0]
        swfUrl = urlparse.urljoin(pageUrl, swfUrl)

        infoUrl = 'http://mvn.vaughnsoft.net/video/edge/%s_%s' % (domain,
                                                                  channel)
        result = client.request(infoUrl)

        streamer = re.compile('(.+?);').findall(result)[0]
        streamer = 'rtmp://%s/live' % streamer

        app = re.compile('mvnkey-(.+)').findall(result)[0]
        app = 'live?%s' % app

        url = '%s app=%s playpath=%s pageUrl=%s swfUrl=%s swfVfy=true live=true timeout=15' % (
            streamer, app, playpath, pageUrl, swfUrl)

        return url
    except:
        return
示例#15
0
def resolve(url):
    try:
        addonid = 'script.module.liveresolver'

        user, password = control.setting('ustvnow_email'), control.setting('ustvnow_pass')
        if (user == '' or password == ''):
            user, password = control.addon(addonid).getSetting('ustvnow_email'), control.addon(addonid).getSetting('ustvnow_pass')
        if (user == '' or password == ''): return ''

        token = urllib.urlencode({'username': user, 'password': password})
        token = 'http://m-api.ustvnow.com/gtv/1/live/login?%s&device=gtv&redir=0' % token
        token = json.loads(client.request(token))['token']

        result = 'http://m-api.ustvnow.com/gtv/1/live/playingnow?token=%s' % token
        result = json.loads(client.request(result))

        try:
            scode = urlparse.parse_qs(urlparse.urlparse(url).query)['scode'][0]
        except:
            stream_code = urlparse.parse_qs(urlparse.urlparse(url).query)['stream_code'][0]
            scode = [i['scode'] for i in result['results'] if i['stream_code'] == stream_code][0]

        key = (result['globalparams']['passkey']).replace('key=', '')

        url = 'http://m-api.ustvnow.com/stream/1/live/view?token=%s&key=%s&scode=%s' % (token, key, scode)
        url = json.loads(client.request(url))['stream']

        return url
    except:
        return ''
示例#16
0
def resolve(url):
    try:
        try:
            referer = urlparse.parse_qs(
                urlparse.urlparse(url).query)['referer'][0]
        except:
            referer = url
        page = url
        pageUrl = url
        result = client.request(page, referer=referer)
        swf = 'http://www.embeducaster.com' + re.compile(
            'SWFObject\(\"(.+?)".*?').findall(result)[0]
        vars = re.compile('id=(\d+)&s=([^&\'"]+).*?&pk=([^&\'"]+).*').findall(
            result)[0]
        id, channel, pk = vars[0], vars[1], vars[2]
        page2 = 'http://www.embeducaster.com:1935/loadbalancer?' + id
        result = client.request(page2, referer=referer)
        ip = re.compile(".*redirect=([\.\d]+).*").findall(result)[0]
        rtmp = 'rtmp://%s/live/' % ip
        url = '%s playPath=%s?id=%s&pk=%s swfVfy=1 timeout=10 conn=S:OK live=true swfUrl=%s flashver=WIN\\2019,0,0,226 pageUrl=%s' % (
            rtmp, channel, id, pk, swf, pageUrl)

        return url
    except:
        return
示例#17
0
def resolve(url):
    try:
        try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
        except: referer = 'http://zerocast.tv/channels'
        if 'chan=' in url:
            result = client.request(url, referer=referer)
            url = re.findall('src=[\'"](.+?)[\'"]>', result)[-1]

        page = url
        r = re.findall('.+?a=([0-9]+)', url)[0]

        url = 'http://zerocast.tv/embed.php?a=%s&id=&width=640&height=480&autostart=true&strech=exactfit' % r


        result = client.request(url, referer=referer)
        unpacked = ''
        packed = result.split('\n')
        for i in packed:
            try:
                unpacked += jsunpack.unpack(i)
            except:
                pass
        result += unpacked
        js = re.findall('getJSON\([\"\'](http://zerocast.tv/file[^\"\']+)',result)[0]
        token = json.loads(client.request(js))['token']
        r = re.findall('curl\s*=\s*[\'"](.+?)[\'"]', result)
        r = r[0].decode('base64', 'strict')

        if '.m3u8' in r or 'rtmp' in r:
            url = r
            return url + ' swfUrl=http://p.jwpcdn.com/6/12/jwplayer.flash.swf flashver=' + constants.flash_ver() + ' token=' + token + ' timeout=15 live=true swfVfy=1 pageUrl=' + page
    except:
        return
示例#18
0
def resolve(url):
    try:
        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


        result = client.request(pageUrl, referer=pageUrl)

        swfUrl = re.compile('"(/\d+/swf/[0-9A-Za-z]+\.swf)').findall(result)[0]
        swfUrl = urlparse.urljoin(pageUrl, swfUrl)


        infoUrl = 'http://mvn.vaughnsoft.net/video/edge/%s_%s' % (domain, channel)
        result = client.request(infoUrl)

        streamer = re.compile('(.+?);').findall(result)[0]
        streamer = 'rtmp://%s/live' % streamer

        app = re.compile('mvnkey-(.+)').findall(result)[0]
        app = 'live?%s' % app

        url = '%s app=%s playpath=%s pageUrl=%s swfUrl=%s swfVfy=true live=true timeout=20' % (streamer, app, playpath, pageUrl, swfUrl)

        return url
    except:
        return
示例#19
0
def resolve(url):
    try:
        try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
        except: referer = 'http://zerocast.tv/channels'
        if 'chan=' in url:
            result = client.request(url, referer=referer)
            url = re.findall('src=[\'"](.+?)[\'"]>', result)[-1]

        page = url
        r = re.findall('.+?a=([0-9]+)', url)[0]

        url = 'http://zerocast.tv/embed.php?a=%s&id=&width=640&height=480&autostart=true&strech=exactfit' % r


        result = client.request(url, referer=referer)
        unpacked = ''
        packed = result.split('\n')
        for i in packed:
            try:
                unpacked += jsunpack.unpack(i)
            except:
                pass
        result += unpacked
        js = re.findall('getJSON\([\"\'](http://zerocast.tv/file[^\"\']+)',result)[0]
        token = json.loads(client.request(js))['token']
        r = re.findall('curl\s*=\s*[\'"](.+?)[\'"]', result)
        r = r[0].decode('base64', 'strict')

        if '.m3u8' in r or 'rtmp' in r:
            url = r
            return url + ' swfUrl=http://p.jwpcdn.com/6/12/jwplayer.flash.swf flashver=' + constants.flash_ver() + ' token=' + token + ' timeout=15 live=true swfVfy=1 pageUrl=' + page
    except:
        return
示例#20
0
def resolve(url):
    
    try:
        try: 
            referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
            url = url.replace(referer,'').replace('?referer=','').replace('&referer=','')
        except: referer = url

        try:
            channel = urlparse.parse_qs(urlparse.urlparse(url).query)['channel'][0]
        except:
            try:
                channel = re.compile('/view/(\d+)/').findall(url)[0]
            except:
                channel = re.compile('/embed/(\d+)&').findall(url)[0]

        page = url.replace('embed','view')
        try:
            ss = page.find('&')
            page = page[:ss]
        except: pass
        result = client.request(page,referer=referer)
        token_url = re.compile('getJSON\("(.+?)"').findall(result)[0]
        r2 = client.request(token_url,referer=referer)
        token = json.loads(r2)["token"]
        file = re.compile('file\s*:\s*(?:\'|\")(.+?)(?:\'|\")').findall(result)[0].replace('.flv','')
        rtmp = re.compile('streamer\s*:\s*(?:\'|\")(.+?)(?:\'|\")').findall(result)[0].replace(r'\\','\\').replace(r'\/','/')
        app = re.compile('.*.*rtmp://[\.\w:]*/([^\s]+)').findall(rtmp)[0]
        url=rtmp + ' app=' + app + ' playpath=' + file + ' swfUrl=http://www.streamlive.to/ads/streamlive.swf flashver=WIN\\2019,0,0,226 live=1 timeout=15 token=' + token + ' swfVfy=1 pageUrl='+page

        return url
    except:
        return
示例#21
0
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
示例#22
0
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
示例#23
0
def resolve(url):
    #try:
    pageUrl = url
    try:
        referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
    except:
        referer = url

    result = client.request(url,
                            referer=referer,
                            headers={'Host': urlparse.urlparse(url).netloc})
    x = re.findall('id=[\'\"](.+?)[\'\"].+?src=[\'\"](.+?)player.js',
                   result)[0]
    url = x[1] + 'stream.php?id=%s&width=640&height=480' % x[0]
    result = client.request(url,
                            referer=pageUrl,
                            headers={'Host': urlparse.urlparse(url).netloc})
    print(result)

    ssx1 = base64.b64decode(re.findall('id="ssx1" value="(.+?)"', result)[0])
    ssx4 = base64.b64decode(re.findall('id="ssx4" value="(.+?)"', result)[0])
    token = re.findall('securetoken:\s*(.+?)\s*\}', result)[0]
    app = re.findall('.*rtmp://[\.\w:]*/([^"\']+)', ssx4)[0]
    url = ssx4 + ' app=' + app + ' playpath=' + ssx1 + ' swfUrl=ttp://www.businessapp1.pw/jwplayer5/addplayer/jwplayer.flash.swf live=true flashver=WIN\\2020,0,0,228 token=' + token + ' timeout=15 pageUrl=' + pageUrl
    return url
示例#24
0
def resolve(url):
    #try:
        try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
        except: referer = url

        try:
            channel = urlparse.parse_qs(urlparse.urlparse(url).query)['channel'][0]
        except:
            channel = re.compile('/embed/(\d+)&').findall(url)[0]


        page = 'http://www.iguide.to/embedplayer_new.php?width=700&height=410&channel=%s&autoplay=true' % channel
        
        log(page)
        headers = {'Host':'www.iguide.to','Connection':'keep-alive'}
        result = client.request(page, referer=referer,headers = headers)
        log(result)
        token_url =re.compile('\$.getJSON\("(.+?)", function\(json\){').findall(result)[0]
        token = json.loads(client.request(token_url, referer=referer))['token']

        file = re.compile('(?:\'|\")?file(?:\'|\")?\s*:\s*(?:\'|\")(.+?)(?:\'|\")').findall(result)[0].replace('.flv','')
        rtmp = re.compile('(?:\'|\")?streamer(?:\'|\")?\s*:\s*(?:\'|\")(.+?)(?:\'|\")').findall(result)[0].replace(r'\\','\\').replace(r'\/','/')
        app = re.compile('.*.*rtmp://[\.\w:]*/([^\s]+)').findall(rtmp)[0]

        url=rtmp +  ' playpath=' + file + ' swfUrl=http://www.iguide.to/player/secure_player_iguide_token.swf flashver=' + constants.flash_ver() + ' live=1 timeout=15 token=' + token + ' swfVfy=1 pageUrl='+page
        return url
示例#25
0
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': 'ShockwaveFlash/20.0.0.286'
            })

        return url
    except:
        return
示例#26
0
文件: castto.py 项目: uguer30/Project
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
示例#27
0
def resolve(url):
    try:
        if '/vod/' in url:
            url = re.compile('/(\d+)').findall(url)[-1]
            url = 'http://www.filmon.com/vod/info/%s' % url
        elif '/tv/' in url:
            url = url.replace('/tv/', '/channel/')
        elif not '/channel/' in url:
            raise Exception()


        headers = {'X-Requested-With': 'XMLHttpRequest'}

        result = client.request(url, headers=headers)
        result = json.loads(result)

        try:
            result = result['streams']
        except:
            result = result['data']['streams']
            result = [i[1] for i in result.iteritems()]

        strm = [(i['url'], int(i['watch-timeout'])) for i in result]
        strm = [i for i in strm if '.m3u8' in i[0]]
        strm.sort()
        strm = strm[-1][0]

        url = client.request(strm).splitlines()
        url = [i for i in url if '.m3u8' in i]
        if len(url) == 0: return strm
        url = urlparse.urljoin(strm, url[0])

        return url
    except:
        return
示例#28
0
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
示例#29
0
def resolve(url):
    try:
        pageUrl = url
        try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
        except: referer = url
        
        result = client.request(url, referer=referer, headers= { 'Host': urlparse.urlparse(url).netloc} )
        page2 = re.findall('.*src=["\']([^"\']+)["\'].*',result)[0]
        result = client.request(page2, referer=referer )
        result = decryptionUtils.doDemystify(result)
        vs = re.findall('"([^\"\']+)";',result)
        for v in vs:

            try:
                vd = base64.b64decode(v)
                if 'm3u8' in vd:
                    file = vd
                    break
            except:
                pass

        host = urlparse.urlparse(pageUrl).netloc
        host2 = urlparse.urlparse(file).netloc
        origin = 'http://' + host
        url = file + '|%s' % urllib.urlencode({'Referer':page2,'User-agent':'Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0','Accept-Encoding':'gzip,deflate lzma, sdch','DNT':'1','Connection':'keep-alive','IcY-METadATA':'0','Origin':origin,'Host':host2})
        return url
    except:
        return
示例#30
0
def resolve(url):
    try:
        try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
        except: referer = url

        if 'chan=' in url:
            result = client.request(url, referer=referer)
            url = re.findall('<script\stype=[\'"]text/javascript[\'"]\ssrc=[\'"](.+?)[\'"]>', result)[0]

        r = re.findall('.+?a=([0-9]+)', url)[0]

        url = 'http://zerocast.tv/embed.php?a=%s&id=&width=640&height=480&autostart=true&strech=' % r

        result = client.request(url, referer=referer)

        r = re.findall('curl\s*=\s*[\'"](.+?)[\'"]', result)
        r += re.findall('file\s*:\s*["\'](.+?)["\']', result)
        r = r[0].decode('base64', 'strict')

        if r.startswith('rtmp'):
            return '%s pageUrl=%s live=1 timeout=30' % (r, url)

        elif '.m3u8' in r:
            chunk = client.request(r)
            chunk = re.compile('(chunklist_.+)').findall(chunk)[0]
            url = r.split('.m3u8')[0].rsplit('/', 1)[0] + '/' + chunk
            url += '|%s' % urllib.urlencode({'User-Agent': client.agent()})
            return url
    except:
        return
示例#31
0
文件: ehftv.py 项目: bialagary/mw
def resolve(url):
    try:
        result = client.request(url, mobile=True)
        pom = re.findall('.*?url:\s[\'"](\/\/streamaccess\.unas\.tv[^\'"]+\" \+ label \+ \"[^\'"]+).*?', result)[0].replace('" + label + "','ehftv')
        result = client.request('http:' +pom, referer='http://ehftv.com/assets/swf/videoplayer_6.0.2388.swf?r=20150422', mobile=True)
        auth,url = re.findall('.*?auth="([^\'"]+)"\s*url="([^\'"]+)".*?',result)[0]
        url = url + '?hdnea='+ auth 
        return url
    except:
        return
示例#32
0
文件: ehftv.py 项目: uguer30/Project
def resolve(url):
    try:
        result = client.request(url, mobile=True)
        pom = re.findall('.*?url:\s[\'"](\/\/streamaccess\.unas\.tv[^\'"]+\" \+ label \+ \"[^\'"]+).*?', result)[0].replace('" + label + "','ehftv')
        result = client.request('http:' +pom, referer='http://ehftv.com/assets/swf/videoplayer_6.0.2388.swf?r=20150422', mobile=True)
        auth,url = re.findall('.*?auth="([^\'"]+)"\s*url="([^\'"]+)".*?',result)[0]
        url = url + '?hdnea='+ auth 
        return url
    except:
        return
示例#33
0
def resolve(url):
    try:
        result = client.request(url, referer=url)
        jsUrl = 'http://airq.tv' + re.findall('.*src=["\']([^"\']+).*',result)[0]
        result = client.request(url, referer=jsUrl)
        file = re.findall('.*file=([^"]+).*',result)[0]
        file = xppod.decode(file)
        url = file+'|Referer='+url+'&User-Agent=Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.71 Safari/537.36'
        return url
    except:
        return
示例#34
0
def resolve(url):
    try:
        result = client.request(url, referer = url)
        pageUrl = re.findall('.*?iframe\s*src=["\']([^"\']+)["\'].*',result)[0]
        result = client.request(pageUrl, referer = url)
        rtmp = re.findall('.*file\w+\s*[:=]\s*"([^\'",]+).*',result)[0].replace(' ','')
        url = rtmp + ' swfUrl=http://direct-stream.biz/jwplayer/jwplayer.flash.swf flashver=WIN\2019,0,0,226 live=1 timeout=14 swfVfy=1 pageUrl=' + pageUrl
        return url
    
    except:
        return
示例#35
0
def resolve(url):
    try:
        result = client.request(url)
        m3u8_url = re.findall('.*?m3u8_url["]?\s*:\s*["]?((?:[^"]+?m3u8\?dw=1)[^"]+).*',result)[0]
        result = client.request(m3u8_url)
        m3u8 = re.findall('.*?(http[^"\']+\.m3u8[^"\'\n]*).*',result)[0]
        result = client.request(m3u8_url,output='cookie')
        cookie = urllib.quote(re.findall('hdntl=(.+?);',result)[0])
        url = m3u8 +'|Cookie=hdntl='+cookie+'&User-Agent=Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.71 Safari/537.36'
        return url
    except:
       return
示例#36
0
def resolve(url):
    try:
        result = client.request(url, referer=url)
        jsUrl = 'http://airq.tv' + re.findall('.*src=["\']([^"\']+).*',
                                              result)[0]
        result = client.request(url, referer=jsUrl)
        file = re.findall('.*file=([^"]+).*', result)[0]
        file = xppod.decode(file)
        url = file + '|Referer=' + url + '&User-Agent=Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.71 Safari/537.36'
        return url
    except:
        return
示例#37
0
def resolve(url):
    try:
        result = client.request(url)
        m3u8_url = re.findall('.*?m3u8_url["]?\s*:\s*["]?((?:[^"]+?m3u8\?dw=1)[^"]+).*',result)[0]
        result = client.request(m3u8_url)
        m3u8 = re.findall('.*?(http[^"\']+\.m3u8[^"\'\n]*).*',result)[0]
        result = client.request(m3u8_url,output='cookie')
        cookie = urllib.quote(re.findall('hdntl=(.+?);',result)[0])
        url = m3u8 +'|Cookie=hdntl='+cookie+'&User-Agent=Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.71 Safari/537.36'
        return url
    except:
       return
示例#38
0
def resolve(url):
    try:
        try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
        except: referer = url
        result = client.request(url, referer = referer)
        json_url = re.findall('.*?getJSON\([\'"]([^\'"]+)[\'"].*?',result)[0]
        result = client.request(json_url, referer = url)
        rtmp = re.findall('.*?rtmp":"([^"]+)"',result)[0]
        file = re.findall('"streamname":"([^"]+)',result)[0]
        url = rtmp + ' playpath=' + file + ' swfhash=2f17c059e0fb060411ac97d1da663ce996b5538b85a55affb7e42a3062abfba7 swfsize=224436 token=#@8x12pX@!x@# live=1 timeout=14 swfVfy=1 pageUrl=' + referer
        return url
    except:
       return
示例#39
0
def resolve(url):
    try:
        result = client.request(url, referer=url)
        pageUrl = re.findall('.*?iframe\s*src=["\']([^"\']+)["\'].*',
                             result)[0]
        result = client.request(pageUrl, referer=url)
        rtmp = re.findall('.*file\w+\s*[:=]\s*"([^\'",]+).*',
                          result)[0].replace(' ', '')
        url = rtmp + ' swfUrl=http://direct-stream.biz/jwplayer/jwplayer.flash.swf flashver=WIN\2019,0,0,226 live=1 timeout=14 swfVfy=1 pageUrl=' + pageUrl
        return url

    except:
        return
示例#40
0
def resolve(url):
    #try:
        id = re.findall('streamup.com/([^$/]+)',url)[0]
        playUrl = 'https://streamup.com/%s/embeds/video?startMuted=true'%id

        url = 'https://api.streamup.com/v1/channels/' + id
        result = client.request(url, referer=playUrl)
        slug = re.findall('.*?["\']slug["\']\s*:\s*["\']([^"\']+)["\'].*',result)[0]

        url2 = 'https://lancer.streamup.com/api/channels/%s/playlists'%slug
        result = client.request(url2, referer=playUrl)
        url = re.findall('.*(http[^"\']+\.m3u8[^"\']*).*',result)[0]
        url+='|%s' %urllib.urlencode({'Referer':playUrl,'User-agent':client.agent()})
        return url
示例#41
0
def resolve(url):
    if 'embed' in url:
        import streamlive_embed
        return streamlive_embed.resolve(url)
    
    try:
        page = url
        addonid = 'script.module.liveresolver'

        user, password = control.setting('streamlive_user'), control.setting('streamlive_pass')
        if (user == '' or password == ''):
            user, password = control.addon(addonid).getSetting('streamlive_user'), control.addon(addonid).getSetting('streamlive_pass')
        if (user == '' or password == ''): return ''

        try: 
            referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
            url = url.replace(referer,'').replace('?referer=','').replace('&referer=','')
        except:
            referer = url


        post_data = 'username=%s&password=%s&accessed_by=web&submit=Login'%(user,password)

        cj = get_cj()
        result = client.request(url,cj=cj,headers={'referer':'http://www.streamlive.to', 'Content-type':'application/x-www-form-urlencoded', 'Origin': 'http://www.streamlive.to', 'Host':'www.streamlive.to', 'User-agent':client.agent()})
        if 'this channel is a premium channel.' in result.lower():
          control.infoDialog('Premium channel. Upgrade your account to watch it!', heading='Streamlive.to')
          return 

        if 'not logged in yet' in result.lower():
            #Cookie expired or not valid, request new cookie
            cj = login(cj,post_data)
            cj.save (cookieFile,ignore_discard=True)
            result = client.request(url,cj=cj)

        token_url = re.compile('getJSON\("(.+?)"').findall(result)[0]
        r2 = client.request(token_url,referer=referer)
        token = json.loads(r2)["token"]

        file = re.compile('(?:[\"\'])?file(?:[\"\'])?\s*:\s*(?:\'|\")(.+?)(?:\'|\")').findall(result)[0].replace('.flv','')
        rtmp = re.compile('streamer\s*:\s*(?:\'|\")(.+?)(?:\'|\")').findall(result)[0].replace(r'\\','\\').replace(r'\/','/')
        app = re.compile('.*.*rtmp://[\.\w:]*/([^\s]+)').findall(rtmp)[0]
        url=rtmp + ' app=' + app + ' playpath=' + file + ' swfUrl=http://www.streamlive.to/ads/streamlive.swf flashver=' + constants.flash_ver() + ' live=1 timeout=15 token=' + token + ' swfVfy=1 pageUrl='+page

        
        return url
    except:
        return
示例#42
0
def resolve(url):
    try:
        try:
            referer = urlparse.parse_qs(
                urlparse.urlparse(url).query)['referer'][0]
        except:
            referer = url
        result = client.request(url, referer=referer)

        f = re.compile('var f\s*=\s*(\d+);').findall(result)[0]
        a = str(
            int(re.compile('var a\s*=\s*(\d+);').findall(result)[0]) / int(f))
        b = str(
            int(re.compile('var b\s*=\s*(\d+);').findall(result)[0]) / int(f))
        c = str(
            int(re.compile('var c\s*=\s*(\d+);').findall(result)[0]) / int(f))
        d = str(
            int(re.compile('var d\s*=\s*(\d+);').findall(result)[0]) / int(f))
        v = re.compile('var v_part =\s*\'([^\']+).*').findall(result)[0]
        rtmp = 'rtmp://' + a + '.' + b + '.' + c + '.' + d + v

        url = rtmp + ' swfUrl=http://filo.hqstream.tv/jwp6/jwplayer.flash.swf live=1 timeout=15 swfVfy=1 pageUrl=http://hqstream.tv'
        return url
    except:
        return
示例#43
0
def resolve(url):
    try:
        id = urlparse.parse_qs(urlparse.urlparse(url).query)['c'][0]

        url = 'http://castamp.com/embed.php?c=%s&vwidth=640&vheight=380' % id
        pageUrl = url
        try:
            referer = urlparse.parse_qs(
                urlparse.urlparse(url).query)['referer'][0]
        except:
            referer = url

        result = client.request(url, referer=referer)
        swf = re.compile('\'flashplayer\'\s*:\s*(?:\'|\")(.+?)(?:\'|\")'
                         ).findall(result)[-1]
        file = re.compile('\'file\'\s*:\s*(?:\'|\")(.+?)(?:\'|\")').findall(
            result)[-1]
        rtmp = re.compile(
            '\'streamer\'\s*:\s*(?:\'|\")(.+?)(?:\'|\")').findall(result)[-1]

        url = rtmp + ' playpath=' + file + ' swfUrl=' + swf + ' live=true timeout=15 swfVfy=1 pageUrl=' + pageUrl
        return url

    except:
        return
示例#44
0
def resolve(url):
    try:
        try:
            referer = urlparse.parse_qs(
                urlparse.urlparse(url).query)['referer'][0]

        except:
            referer = url
        pageUrl = url
        host = urlparse.urlparse(url).netloc

        result = client.request(url, referer=referer, headers={'host': host})
        s = re.findall('name=["\']s["\'] value=["\'](.+?)["\']', result)[0]
        f = re.findall('name=["\']f["\'] value=["\'](.+?)["\']', result)[0]
        s2 = json.loads(xppod.decode_sh(s))
        key = s2['stkey']

        file = xppod.decode_sh(re.sub(key, '', f))
        url = file + '|%s' % (urllib.urlencode({
            'Referer': "http://h5.adshell.net/flash",
            'User-agent': client.agent()
        }))
        return url
    except:
        return
示例#45
0
文件: castup.py 项目: bialagary/mw
def resolve(url):
    try:
        pageUrl = url
        try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
        except: referer = url
        result = client.request(url)
        json_url = re.compile('\$.getJSON\("(.+?)", function\(json\){').findall(result)[0]
        token = re.compile("\('token', '(.+?)'\);").findall(result)[0]
        data = json.loads(client.request(json_url))
        file = data['streamname']
        rtmp = data['rtmp']
        swf ='http://www.castup.tv' + re.compile('.*?SWFObject\([\'"]([^\'"]+)[\'"].*').findall(result)[0]
        url = rtmp + ' playpath=' + file + ' swfUrl=' + swf + ' live=1 timeout=15 token=' + token + ' swfVfy=1 pageUrl=' + pageUrl
        return url
    except:
        return
示例#46
0
def resolve(url):
    try:
    	try:
            referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
     	except:
            referer=url
        result = client.request(url, referer = referer)
        
        pageUrl = re.findall('.*?iframe\s*src=["\']([^"\']+)["\'].*',result)[0]
        result = client.request(pageUrl, referer = referer)
        rtmp = re.findall('.*file\w+\s*[:=]\s*"([^\'",]+).*',result)[0].replace(' ','')
        url = rtmp + ' swfUrl=http://direct-stream.biz/jwplayer/jwplayer.flash.swf flashver=' + constants.flash:ver() + ' live=1 timeout=14 swfVfy=1 pageUrl=' + pageUrl
        return url
    
    except:
        return
示例#47
0
def resolve(url):
    try:
        try:
            referer = urlparse.parse_qs(urlparse.urlparse(url).query)["referer"][0]
        except:
            referer = url

        page = urlparse.parse_qs(urlparse.urlparse(url).query)["live"][0]
        page = "http://www.yocast.tv/embed.php?live=%s&vw=600&vh=450" % page

        result = client.request(page, referer=referer)

        file = re.compile("file\s*:\s*(?:'|\")(.+?)(?:'|\")").findall(result)[-1].replace(".flv", "")
        rtmp = re.compile("streamer\s*:\s*(?:'|\")(.+?)(?:'|\")").findall(result)[-1]
        url = (
            rtmp
            + " playpath="
            + file
            + " swfUrl=http://www.yocast.tv/myplayer/jwplayer.flash.swf flashver="
            + constants.flash_ver()
            + " live=1 timeout=14 swfVfy=1 pageUrl="
            + page
        )
        return url
    except:
        return
示例#48
0
def resolve(url):
    try:
        id  = urlparse.parse_qs(urlparse.urlparse(url).query)['c'][0] 
        try:
            referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
        except:
            referer= url 
        url = 'http://castamp.com/embed.php?c=%s&vwidth=640&vheight=380'%id
        pageUrl=url

        
        result = client.request(url, referer=referer,headers = {'Host':'www.castamp.com'})
        result = urllib.unquote(result).replace('unescape(','').replace("'+'",'')
        rplcs = re.findall('=(.+?).replace\([\"\'](.+?)[\"\']\s*,\s*[\"\']([^\"\']*)[\"\']',result)
        result = re.sub('\/\*[^*]+\*\/','',result)
        var = re.compile('var\s(.+?)\s*=\s*[\'\"](.+?)[\'\"]').findall(result)
        var_dict = dict(var)
        file = re.compile('\'file\'\s*:\s*(.+?),').findall(result)[-1]
        file = var_dict[file]
        rtmp = re.compile('(rtmp://[^\"\']+)').findall(result)[0]
        for r in rplcs:
            file = file.replace(r[1],r[2])
        url = rtmp + ' playpath=' + file + ' swfUrl=http://p.castamp.com/cplayer.swf' + ' flashver=' + constants.flash_ver() + ' live=true timeout=15 swfVfy=1 pageUrl=' + pageUrl
        
        return url
    
    except:
        return
示例#49
0
def resolve(url):
    try:
        id = url.split("?v=")[-1].split("/")[-1].split("?")[0].split("&")[0]
        result = client.request('http://www.youtube.com/watch?v=%s' % id)

        message = client.parseDOM(result,
                                  'div',
                                  attrs={'id': 'unavailable-submessage'})
        message = ''.join(message)

        alert = client.parseDOM(result,
                                'div',
                                attrs={'id': 'watch7-notification-area'})

        if re.search('LIVE_WATCHING_NOW', result):
            url = live(result, id)
            if not url == None: return url

        if len(alert) > 0: raise Exception()
        if re.search('[a-zA-Z]', message): raise Exception()

        url = 'plugin://plugin.video.youtube/play/?video_id=%s' % id
        return url
    except:
        return
示例#50
0
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
示例#51
0
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=urllib.unquote(result)

        var = re.compile('var\s(.+?)\s*=\s*[\'\"](.+?)[\'\"]').findall(result)
        var_dict = dict(var)


        if 'm3u8' in result:
            url = re.compile('file.+?\s*=\s*(?:unescape\()[\'\"](.+?)[\'\"]').findall(result)[0]
            url = 'http://' + url + '.m3u8'
            url += '|%s' % urllib.urlencode({'User-Agent': client.agent(), 'Referer': referer})
            log("Castalba: Found m3u8 url: " + url)
            
        else:
            try:
                filePath = re.compile("'file'\s*:\s*(?:unescape\()?'(.+?)'").findall(result)[0]
                
            except:
                file = re.findall('var file\s*=\s*(?:unescape\()?(?:\'|\")(.+?)(?:\'|\")',result)[0]
                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]
            
            strm_func = re.findall('function streamer\(\)\s*\{([^\{]+)',result)[0]
            strm_func = re.sub('\s//[^;]+','',strm_func)

            streamer = re.findall('return\s*([^;]+)',strm_func)[0]
            for v in var_dict.keys():
                streamer = streamer.replace(v,var_dict[v])

            streamer = streamer.replace('"','').replace("'",'').replace('+','').strip()

            url = streamer.replace('///','//') + ' playpath=' + filePath +' swfUrl=' + swf + ' flashver=' + constants.flash_ver() +' live=true timeout=15 swfVfy=1 pageUrl=' + pageUrl
            log("Castalba: Found rtmp link: " + url)

        return url
    
    except:
        log("Castalba: Resolver failed. Returning...")
        return
示例#52
0
文件: dinozap.py 项目: bialagary/mw
def resolve(url):
    try:
        pageUrl = url
        try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
        except: referer = url
        result = client.request(url)
        embed = re.findall('.*<iframe src="([^"]+)".*',result)[0]
        result = client.request(embed)
        result = urllib.unquote(result)
        ssx1 = base64.b64decode(re.findall('id="ssx1" value="(.+?)"',result)[0])
        ssx4 = base64.b64decode(re.findall('id="ssx4" value="(.+?)"',result)[0])
        token = re.findall('securetoken:\s*(.+?)\s*\}',result)[0]
        app = re.findall('.*rtmp://[\.\w:]*/([^"\']+)',ssx4)[0]
        url = ssx4 + ' app=' + app + ' playpath=' + ssx1 + ' swfUrl=http://www.playerapp1.pw/jwplayer5/addplayer/jwplayer.flash.swf live=true flashver=WIN\2019,0,0,245 token='+ token + ' timeout=15 pageUrl=' + pageUrl
        return url
    except:
        return
示例#53
0
def resolve(url):
    try:
        try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
        except: referer = url
        url = url.replace(referer,'').replace('?referer=', '')
        result = client.request(url, referer = referer)
        swf='http://www.embedezcast.com' + re.compile('SWFObject\(\"(.+?)".*?').findall(result)[0]
        vars = re.compile('id=(\d+)&s=([^&\'"]+).*?&pk=([^&\'"]+).*').findall(result)[0]
        id,channel,pk=vars[0],vars[1],vars[2]
        page2='http://www.embedezcast.com:1935/loadbalancer?' + id
        result = client.request(page2, referer=referer)
        ip = re.compile(".*redirect=([\.\d]+).*").findall(result)[0]
        rtmp='rtmp://%s/live/'%ip
        url='%s playPath=%s?id=%s&pk=%s swfVfy=1 timeout=10 conn=S:OK live=true swfUrl=%s flashver=WIN\\2019,0,0,226 pageUrl=%s'%(rtmp,channel,id,pk,swf,url)
        return url
    except:
        return
示例#54
0
文件: aliez.py 项目: bialagary/mw
def resolve(url):
    #try:
        try: referer = urlparse.parse_qs(urlparse.urlparse(url).query)['referer'][0]
    	except: referer = url
        result = client.request(url, referer=referer)
        url = re.findall('src=(?:\'|\")(.+?\.m3u8)(?:\'|\")',result)[0]
        
        return url
示例#55
0
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