Beispiel #1
0
 def sources(self, url, hostDict, hostprDict):
     try:
         sources = []
         if url == None:
             return sources
         r = client.request(url,
                            headers=client.randommobileagent('android'))
         match = re.compile('<input type="hidden" value="(.+?)"',
                            re.DOTALL).findall(r)
         for url in match:
             url = "https:" + url if not url.startswith('http') else url
             if 'vidstreaming.io' in url:
                 r = client.request(
                     url, headers=client.randommobileagent('android'))
                 match = re.compile('data-video="(.+?)"',
                                    re.DOTALL).findall(r)
                 for link in match:
                     link = "https:" + link if not link.startswith(
                         'http') else link
                     valid, host = source_tools.checkHost(link, hostDict)
                     if valid:
                         info = source_tools.get_info(link)
                         quality = source_tools.get_quality(link)
                         sources.append({
                             'source': host,
                             'quality': quality,
                             'language': 'en',
                             'url': link,
                             'info': info,
                             'direct': False,
                             'debridonly': False
                         })
             else:
                 valid, host = source_tools.checkHost(url, hostDict)
                 if valid:
                     info = source_tools.get_info(url)
                     quality = source_tools.get_quality(url)
                     sources.append({
                         'source': host,
                         'quality': quality,
                         'language': 'en',
                         'url': url,
                         'info': info,
                         'direct': False,
                         'debridonly': False
                     })
         return sources
     except:
         return sources
Beispiel #2
0
 def sources(self, url, hostDict, hostprDict):
     try:
         sources = []
         if url == None:
             return sources
         r = client.request(url)
         links = re.compile('<iframe.+?src="(.+?)"', re.DOTALL).findall(r)
         for u in links:
             r = client.request(u)
             match = getSum.findSum(r)
             for link in match:
                 valid, host = source_tools.checkHost(link, hostDict)
                 if valid:
                     info = source_tools.get_info(link)
                     quality = source_tools.get_quality(link)
                     sources.append({
                         'source': host,
                         'quality': quality,
                         'language': 'en',
                         'url': link,
                         'info': info,
                         'direct': False,
                         'debridonly': False
                     })
         return sources
     except:
         return sources
Beispiel #3
0
def getMore(link, hostDict):
    sources = []
    if link == None:
        return sources
    elif "vidnode.net" in link:
        for source in more_vidnode(link, hostDict):
            sources.append(source)
    elif "vidlink.org" in link:
        for source in more_vidlink(link, hostDict):
            sources.append(source)
    elif "gomostream.com" in link:
        for source in more_gomo(link, hostDict):
            sources.append(source)
    elif "123moviesplayer.com" in link:
        for source in more_123moviesplayer(link, hostDict):
            sources.append(source)
    else:
        valid, host = source_tools.checkHost(link, hostDict)
        if valid:
            quality = source_tools.get_quality(link)
            info = source_tools.get_info(link)
            sources.append({
                'source': host,
                'quality': quality,
                'language': 'en',
                'url': link,
                'info': info,
                'direct': False,
                'debridonly': False
            })
    return sources
Beispiel #4
0
def more_vidnode(link, hostDict):
    sources = []  # By Shellc0de
    try:
        headers = {
            'Host': 'vidnode.net',
            'User-Agent':
            'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36',
            'Upgrade-Insecure-Requests': '1',
            'Accept-Language': 'en-US,en;q=0.9'
        }
        response = client.request(link, headers=headers, timeout=5)
        urls = re.findall(
            '''\{file:\s*['"]([^'"]+).*?label:\s*['"](\d+\s*P)['"]''',
            response, re.DOTALL | re.I)
        if urls:
            for url, qual in urls:
                host = url.split('//')[1].replace('www.', '')
                host = host.split('/')[0].lower()  # 'CDN'
                valid, host = source_tools.checkHost(host, hostDict)
                if valid:
                    quality = source_tools.get_quality(qual, url)
                    info = source_tools.get_info(qual, url)
                    sources.append({
                        'source': host,
                        'quality': quality,
                        'language': 'en',
                        'url': url,
                        'info': info,
                        'direct': True,
                        'debridonly': False
                    })
        return sources
    except:
        return sources
Beispiel #5
0
 def sources(self, url, hostDict, hostprDict):
     try:
         sources = []
         if url == None:
             return sources
         r = client.request(url,
                            headers=client.randommobileagent('android'))
         match = re.compile('<option data-em="(.+?)"', re.DOTALL).findall(r)
         for u in match:
             r = base64.b64decode(u)
             r = client.parseDOM(r, 'iframe', ret='src')[0]
             r = client.request(r,
                                headers=client.randommobileagent('android'))
             try:
                 u = client.parseDOM(r, 'iframe', ret='src')[0]
             except:
                 u = client.parseDOM(r, 'source', ret='src')[0]
             valid, host = source_tools.checkHost(u, hostDict)
             if valid:
                 info = source_tools.get_info(u)
                 quality = source_tools.get_quality(u)
                 sources.append({
                     'source': host,
                     'quality': quality,
                     'language': 'en',
                     'url': u,
                     'info': info,
                     'direct': False,
                     'debridonly': False
                 })
         return sources
     except:
         return sources
Beispiel #6
0
def more_123moviesplayer(link, hostDict):
    sources = []  # Gomo Clone
    try:
        gomo_link = 'https://123moviesplayer.com/decoding_v3.php'
        User_Agent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36'
        result = client.request(link)
        tc = re.compile('tc = \'(.+?)\';').findall(result)[0]
        if (tc):
            token = re.compile('"_token": "(.+?)",').findall(result)[0]
            post = {'tokenCode': tc, '_token': token}

            def tsd(tokenCode):
                _13x48X = tokenCode
                _71Wxx199 = _13x48X[4:18][::-1]
                return _71Wxx199 + "18" + "432782"

            headers = {
                'Host': '123moviesplayer.com',
                'Referer': link,
                'User-Agent': User_Agent,
                'x-token': tsd(tc)
            }
            result = client.request(gomo_link,
                                    XHR=True,
                                    post=post,
                                    headers=headers)
            urls = json.loads(result)
            for url in urls:
                if '123moviesplayer.com' in url:
                    sources.append({
                        'source': 'CDN',
                        'quality': 'SD',
                        'language': 'en',
                        'url': url,
                        'direct': True,
                        'debridonly': False
                    })
                else:
                    valid, host = source_tools.checkHost(url, hostDict)
                    if valid:
                        quality = source_tools.get_quality(url)
                        info = source_tools.get_info(url)
                        sources.append({
                            'source': host,
                            'quality': quality,
                            'language': 'en',
                            'url': url,
                            'info': info,
                            'direct': False,
                            'debridonly': False
                        })
        return sources
    except:
        return sources
Beispiel #7
0
 def sources(self, url, hostDict, hostprDict):
     try:
         sources = []
         if url == None:
             return sources
         page = client.request(url,
                               headers=client.randommobileagent('android'),
                               timeout='3')
         links = client.parseDOM(page,
                                 'table',
                                 attrs={'class': 'movie_version'})
         for link in links:
             try:
                 qual = re.compile('<span class="quality_(.+?)"></span>',
                                   re.DOTALL).findall(link)[0]
                 hoster = re.compile(
                     '<span class="version_host">(.+?)</span>',
                     re.DOTALL).findall(link)[0]
                 href = re.compile('<a href="(.+?)" class=',
                                   re.DOTALL).findall(link)[0]
                 vlink = self.base_link + href
                 valid, host = source_tools.checkHost(hoster, hostDict)
                 if valid and vlink not in str(sources):
                     quality = source_tools.get_quality(qual)
                     info = source_tools.get_info(qual)
                     sources.append({
                         'source': host,
                         'quality': quality,
                         'language': 'en',
                         'url': vlink,
                         'info': info,
                         'direct': False,
                         'debridonly': False
                     })
             except:
                 pass
         return sources
     except:
         return sources
Beispiel #8
0
 def sources(self, url, hostDict, hostprDict):
     try:
         hostDict = hostDict + hostprDict
         sources = []
         if url == None:
             return sources
         r = self.scraper.get(url).content
         r = client.parseDOM(r, 'iframe', ret='src')
         for u in r:
             info = source_tools.get_info(u)
             quality = source_tools.get_quality(u)
             valid, host = source_tools.checkHost(u, hostDict)
             sources.append({
                 'source': host,
                 'quality': quality,
                 'language': 'en',
                 'url': u,
                 'info': info,
                 'direct': False,
                 'debridonly': False
             })
         return sources
     except:
         return sources