def getStreams(url):
    myurl, ret = url.split('@')
    content = getUrl(myurl)
    sources=re.compile('<span id=["\']span_link_links[\'"] onClick="\w+\(\'(.*?)\'').findall(content)
    out = []
    for i, s in enumerate(set(sources)):
        enc_data=json.loads(base64.b64decode(s))
        ciphertext = 'Salted__' + enc_data['s'].decode('hex') + base64.b64decode(enc_data['ct'])
        src= magic_aes.decrypt(ret,base64.b64encode(ciphertext))
        src=src.strip('"').replace('\\','')
        title = 'Link %d' % (i+1)
        out.append({"title": title, "tvid": title, "key": ret, "url": src, "refurl": myurl})
    return out
def getChannelVideo(item):
    import xbmc
    #xbmc.log('@#@CHANNEL-VIDEO-ITEM: %s' % item, xbmc.LOGNOTICE)
    s = requests.Session()
    header = {'User-Agent': UA, 'Referer': item.get('url')}
    content = s.get(item['url'], headers=header).content
    # import uuid
    # hash = uuid.uuid4().hex
    # url = re.findall(r'location.replace\(\'([^\']+)', content)[0]
    # uri = url + hash
    # content = s.get(uri, headers=header).content
    links = re.compile('(http://www.[^\.]+.pw/(?!&#)[^"]+)', re.IGNORECASE +
                       re.DOTALL + re.MULTILINE + re.UNICODE).findall(content)
    link = [x for x in links if '&#' in x]
    if link:
        link = re.sub(r'&#(\d+);', lambda x: chr(int(x.group(1))), link[0])
        data = s.get(link, headers=header).content
        #xbmc.log('@#@CHANNEL-VIDEO-DATA: %s' % data, xbmc.LOGNOTICE)
        f = re.compile('.*?name="f"\s*value=["\']([^"\']+)["\']').findall(data)
        d = re.compile('.*?name="d"\s*value=["\']([^"\']+)["\']').findall(data)
        r = re.compile('.*?name="r"\s*value=["\']([^"\']+)["\']').findall(data)
        # b = re.compile('.*?name="b"\s*value=["\']([^"\']+)["\']').findall(data)
        action = re.compile(
            '[\'"]action[\'"][,\s]*[\'"](http.*?)[\'"]').findall(data)
        srcs = re.compile('src=[\'"](.*?)[\'"]').findall(data)
        if f and r and d and action:
            # payload = urllib.urlencode({'b': b[0], 'd': d[0], 'f': f[0], 'r': r[0]})
            payload = urllib.urlencode({'f': f[0], 'd': d[0], 'r': r[0]})
            data2, c = getUrlc(action[0],
                               payload,
                               header=header,
                               usecookies=True)
            try:
                #######ads banners#########
                bheaders = header
                bheaders['Referer'] = action[0]
                banner = re.findall(r'<script\s*src=[\'"](.+?)[\'"]',
                                    data2)[-1]
                #xbmc.log('@#@BANNER-LINK: %s' % banner, xbmc.LOGNOTICE)
                bsrc = s.get(banner, headers=bheaders).content
                #xbmc.log('@#@BANNER-DATA: %s' % bsrc, xbmc.LOGNOTICE)
                banner = re.findall(r"url:'([^']+)", bsrc)[0]
                #xbmc.log('@#@BANNER-LINK2: %s' % banner, xbmc.LOGNOTICE)
                bsrc = s.get(banner, headers=bheaders).content
                #xbmc.log('@#@BANNER-DATA2: %s' % bsrc, xbmc.LOGNOTICE)
                bheaders['Referer'] = banner
                banner = re.findall(
                    r'window.location.replace\("([^"]+)"\);\s*}\)<\/script><div',
                    bsrc)[0]
                banner = urllib.quote(banner, ':/()!@#$%^&;><?')
                #xbmc.log('@#@BANNER-LINK3: %s' % bsrc, xbmc.LOGNOTICE)
                bsrc = s.get(banner).status_code
                ###########################
            except BaseException:
                pass
            link = re.compile(
                '\([\'"][^"\']+[\'"], [\'"][^"\']+[\'"], [\'"]([^"\']+)[\'"], 1\)'
            ).findall(data2)
            enc_data = json.loads(base64.b64decode(link[0]))
            ciphertext = 'Salted__' + enc_data['s'].decode(
                'hex') + base64.b64decode(enc_data['ct'])
            src = magic_aes.decrypt(item['key'], base64.b64encode(ciphertext))
            src = src.replace('"', '').replace('\\', '').encode('utf-8')
            a, c = getUrlc(srcs[-1], header=header,
                           usecookies=True) if srcs else '', ''
            a, c = getUrlc(src, header=header, usecookies=True)
            # print a
            url_head = '|User-Agent={0}&Referer={1}'.format(
                urllib.quote(UA), urllib.quote('http://h5.adshell.net/peer5'))

            if src.startswith('http'):
                href = src + url_head
                # print href
                return href, srcs[-1], header, item['title']
            else:
                href = magic_aes.decode_hls(src)
                if href:
                    href += url_head
                    return href, srcs[-1], header, item['title']
    return ''