def justporno(self, url):
        try:
            r = client.request(url)
            s = re.findall('''source\s*src=['"]+([^'"]+)''', r)

            self.u = []

            def request(i):
                try:
                    c = client.request(i, output='headers')
                    checks = ['video', 'mpegurl']
                    if any(f for f in checks if f in c['Content-Type']):
                        self.u.append((i, int(c['Content-Length'])))
                except:
                    pass

            threads = []
            for i in s:
                threads.append(workers.Thread(request, i))
            [i.start() for i in threads]
            [i.join() for i in threads]

            u = sorted(self.u, key=lambda x: x[1])[::-1]
            u = client.request(u[0][0], output='geturl')
            return u
        except:
            return
def resolve_url(url, name=None, iconimage=None):

    kodi.busy()

    if 'motherless.com' in url:
        r = client.request(url)
        img = re.findall('''<meta\s*property=["']og:image["']\s*content=["']([^'"]+)''', r)[0]
        SHOW = "ShowPicture(" + img + ')'
        kodi.idle()
        xbmc.executebuiltin(SHOW)
    elif '8muses.com' in url:
        try:
            r = client.request(url)
            dir = re.findall('''<input\s*type=['"]hidden['"]\s*id=['"]imageDir['"]\s*value=['"]([^'"]+)''', r)[0]
            icon_id = re.findall('''<input\s*type=['"]hidden['"]\s*id=['"]imageName['"]\s*value=['"]([^'"]+)''', r)[0]
            display_url = 'https://cdn.ampproject.org/i/s/www.8muses.com/%ssmall/%s' % (dir,icon_id)
            SHOW = "ShowPicture(" + display_url + ')'
        except:
            SHOW = "ShowPicture(" + url + ')'
        kodi.idle()
        xbmc.executebuiltin(SHOW)
    else:
        SHOW = "ShowPicture(" + url + ')'
        kodi.idle()
        xbmc.executebuiltin(SHOW)
 def pornheel(self, url):
     try:
         u = client.request(url)
         e = re.findall('<a\shref="([^"]*)".+?">Streaming\s([^<]*)', u)
         e = [(client.request(i[0], output='geturl'), i[1]) for i in e if i]
         return e
     except:
         return
 def overthumbs(self, url):
     try:
         u = client.request(url)
         e = re.findall('(?s)id="play".+?src="([^"]*)', u)[0]
         e = ('http://overthumbs.com' + e)
         r = client.request(e)
         unpack = jsunpack.unpack(r)
         return re.findall('file.+?"([^"]*)', unpack)[0]
     except:
         return
 def streamate(self, url):
     try:
         u = client.request(url)
         e = re.findall('iframe\.src = \'([^\']*)', u)
         e = 'https://www.streamate.com' + e[0]
         r = client.request(e)
         r = re.findall('data-manifesturl="([^"]*)', r)[0]
         return self.generic(r)
     except:
         return
 def sexmax(self, url):
     try:
         url = client.request(url)
         express = '<div id="player-embed">.+?<iframe src="(.+?)"'
         link = re.compile(express,
                           re.MULTILINE | re.DOTALL).findall(url)[0]
         dir = client.request(link)
         dir = dir.replace('\/', '/')
         express = '"src":"(.+?)"'
         link = re.compile(express,
                           re.MULTILINE | re.DOTALL).findall(dir)[0]
         return link
     except:
         return
 def hugesix(self, url):
     try:
         main = client.request(url)
         links = re.findall('config=(.+?)",', main)[0]
         link = links
         link = client.request(link)
         express1 = '<filehd>(.+?)</filehd>'
         express2 = '<file>(.+?)</file>'
         play = re.compile(express1, re.MULTILINE | re.DOTALL).findall(link)
         if not play:
             play = re.compile(express2,
                               re.MULTILINE | re.DOTALL).findall(link)
         play = play[0]
         return play
     except:
         return
 def fuqer(self, url):
     try:
         u = client.request(url)
         e = re.findall('config:\'([^\']*)', u)[0]
         return self.generic(e)
     except:
         return
 def freeones(self, url):
     try:
         u = client.request(url)
         e = re.findall('_script"\ssrc="([^"]*)', u)[0]
         return self.generic(e)
     except:
         return
 def satan18av(self, url):
     try:
         u = client.request(url)
         e = re.findall('<iframe src="([^"]*)', u)[0]
         return e
     except:
         return
 def befuck(self, url):
     try:
         u = client.request(url)
         e = re.findall('<source src="([^"]*)', u)[0]
         return e
     except:
         return
    def watchxxxfree(self, url):

        try:
            r = client.request(url)
            pattern = r"""data-lazy-src=['"]([^'"]+)"""
            e = re.findall(pattern, r)
            import resolveurl
            num = 0
            u = []
            a = []
            b = []
            c = []
            if e:
                for i in e:
                    if resolveurl.HostedMediaFile(i).valid_url():
                        num += 1
                        a.append('smu_file')
                        b.append('Link %s' % str(num))
                        c.append(i)
                        u = list(zip(b, c, a))
            if u:
                return u
            else:
                return
        except:
            return
 def winporn(self, url):
     try:
         r = client.request(url)
         link = re.findall('var video_id = "(.+?)"', r)[0]
         r = 'http://nl.winporn.com/player_config_json/?vid=' + link + '&aid=0&domain_id=0&embed=0&ref=&check_speed=0'
         return self.generic(r)
     except:
         return
 def pandamovie(self, url):
     try:
         u = client.request(url)
         e = re.findall('<li>.+?on ([^"]*).+?f="([^"]*)', u)
         e = [(i[0], i[1]) for i in e if 'pandamovie' not in i[1]]
         return e
     except:
         return
 def request(i):
     try:
         c = client.request(i, output='headers')
         checks = ['video', 'mpegurl']
         if any(f for f in checks if f in c['Content-Type']):
             self.u.append((i, int(c['Content-Length'])))
     except:
         pass
 def nxgx(self, url):
     try:
         r = client.request(url)
         pattern = r"""iframe\s*src=['"]([^'"]+)"""
         u = re.findall(pattern, r)[0]
         return u
     except:
         return
 def xtheatre(self, url):
     try:
         u = client.request(url)
         u = re.findall('<iframe src="([^"]*)', u)
         u = [(i, i.split('//')[-1].split('.')[0]) for i in u]
         return u
     except:
         return
 def chaturbate(self, url):
     try:
         r = client.request(url)
         pattern = r"""initHlsPlayer\(jsplayer,\s*["']([^'"]+)"""
         u = re.findall(pattern, r)[0]
         return u
     except:
         return 'offline'
    def fourtube(self, url):
        try:
            fourtube_ref = url
            self.fourtube_base = 'https://www.4tube.com'
            self.fourtube_embed = '/embed/%s'
            self.fourtube_player = '/js/player/embed/%s'
            self.fourtube_post = 'https://tkn.kodicdn.com/%s/desktop/%s'
            id = re.findall('\/([0-9]+)', url)[0]
            r = client.request(
                urljoin(self.fourtube_base, self.fourtube_embed % id))
            js = re.findall('\/player\/embed\/([^"]+)', r)[0]
            url = urljoin(self.fourtube_base, self.fourtube_player % js)
            r = client.request(url)
            url_id, qual = re.compile(
                'ajax\(url,opts\);}}\)\(([\d]+),[\d]+,\[([\d,]+)\]\);'
            ).findall(r)[0]
            qual = qual.replace(',', '+')
            r = client.request(self.fourtube_post % (url_id, qual),
                               post='',
                               headers={'Origin': self.fourtube_base},
                               referer=fourtube_ref)
            s = re.compile('token\":\"([^"]+)').findall(r)

            self.u = []

            def request(i):
                try:
                    c = client.request(i, output='headers')
                    checks = ['video', 'mpegurl']
                    if any(f for f in checks if f in c['Content-Type']):
                        self.u.append((i, int(c['Content-Length'])))
                except:
                    pass

            threads = []
            for i in s:
                threads.append(workers.Thread(request, i))
            [i.start() for i in threads]
            [i.join() for i in threads]

            u = sorted(self.u, key=lambda x: x[1])[::-1]
            u = client.request(u[0][0], output='geturl', referer=url)
            return u
        except:
            return
 def request(i):
     try:
         i = i.replace(' ', '%20')
         c = client.request(i, output='headers', referer=url)
         checks = ['video', 'mpegurl', 'html']
         if any(f for f in checks if f in c['Content-Type']):
             self.u.append((i, int(c['Content-Length'])))
     except:
         pass
    def porn00(self, url):

        try:
            r = client.request(url)
            pattern = r'''<ul>.+?iframe.+?\?v=([\d]+)'''
            id = re.findall(pattern, r, re.DOTALL)[0]
            url = 'http://www.porn00.org/plays/?v=%s' % id
            cookie = client.request(url, output='cookie')
            r = client.request(url, cookie=cookie)
            pattern = r'''(?:)file\:\s*[\'\"]([^\'\"]+)[\'\"]\,\s*\w+\:\s*[\'\"]([^\'\"]+)'''
            r = re.findall(pattern, r)
            r = [(i[1], i[0]) for i in r if i]
            u = sorted(r,
                       key=lambda x: int(re.search('(\d+)', x[0]).group(1)),
                       reverse=True)
            return u
        except:
            return
 def yuvutu(self, url):
     try:
         r = client.request(url)
         r = client.parseDOM(r, 'iframe', ret='src')
         r = [i for i in r if 'embed' in i][0]
         r = urljoin(url, r)
         return self.generic(r)
     except:
         return
 def spreadporn(self, url):
     try:
         u = client.request(url)
         e = re.findall(
             '(?s)<li class.+?"stream".+?k="([^"]*).+?c="([^"]*)"\salt="([^"]*)',
             u)
         return e
     except:
         return
 def boobntit(self, url):
     try:
         main = client.request(url)
         link = client.parseDOM(main, 'div', attrs={'id': 'player'})
         link = client.parseDOM(link, 'iframe', ret='src')
         link = link[0]
         return self.generic(link)
     except:
         return self.generic(url)
 def siska(self, url):
     try:
         u = client.request(url)
         e = re.findall('document\.write\(base64_decode\(\'([^\']*)', u)[0]
         b64 = base64.b64decode(e)
         play = re.findall('rc="([^"]*)', b64)[0]
         return play
     except:
         return
 def megasesso(self, url):
     try:
         u = client.request(url)
         u = client.parseDOM(u, 'div', attrs={'class': 'player-iframe'})
         u = [(client.parseDOM(i, 'iframe', ret='src')) for i in u]
         u = [(client.replaceHTMLCodes(i[0]).encode('utf-8')) for i in u]
         u = 'http://www.megasesso.com' + u[0]
         return self.generic(u)
     except:
         return
 def solopornoitaliani(self, url):
     try:
         url = client.request(url)
         express = '\'videoid\',\'(.+?)\''
         link = re.compile(express,
                           re.MULTILINE | re.DOTALL).findall(url)[0]
         link = 'http://www.solopornoitaliani.xxx/vdata/' + link + '.flv'
         return link
     except:
         return
 def nuvid(self, url):
     try:
         url = client.request(url)
         express = 'vid:(.+?),'
         link = re.compile(express,
                           re.MULTILINE | re.DOTALL).findall(url)[0]
         link = 'http://www.nuvid.com/player_config_json/?vid=' + link + '&aid=0&domain_id=0&embed=0&ref=&check_speed=0'
         html = client.request(link)
         html = html.replace('\/', '/')
         express2 = '"hq":"(.+?)"'
         express3 = '"lq":"(.+?)"'
         play = re.compile(express2, re.MULTILINE | re.DOTALL).findall(html)
         if not play:
             play = re.compile(express3,
                               re.MULTILINE | re.DOTALL).findall(html)
         play = play[0]
         return play
     except:
         return
 def drtube(self, url):
     try:
         url = client.request(url)
         express = 'vid:(.+?),'
         link = re.compile(express,
                           re.MULTILINE | re.DOTALL).findall(url)[0]
         link = 'http://www.drtuber.com/player_config_json/?vid=' + link + '&aid=0&domain_id=0&embed=0&ref=&check_speed=0'
         return self.generic(link)
     except:
         return
Exemplo n.º 30
0
def multilinkselector(url):
    try:
        if len(url) == 1:
            url = url[0][1]
        else:
            sources = []

            for i in url:
                smu_file = False
                try:
                    if i[2]: smu_file = True
                except:
                    pass
                if (not smu_file):
                    c = client.request(i[1], output='headers')
                    sources += [(i[0], kodi.convertSize(int(c['Content-Length'])), i[1])]
                else:
                    try:
                        pattern = r'''(?:)(?:http|https)(?:\:\/\/|\:\/\/www.)([^\.]+)'''
                        domain = re.match(pattern, i[1])
                        domain = domain.group(1).title()
                    except:
                        domain = 'Resolve URL Link'
                    sources += [(i[0], domain, i[1])]

            quals = []
            srcs = []

            for i in sources:
                qual = '%s - [ %s ]' % (i[0], i[1])
                quals.append(kodi.giveColor(qual, 'white', True))
                srcs.append(i[2])

            selected = kodi.dialog.select('Select a quality.', quals)
            if selected < 0:
                kodi.notify(msg='No option selected.')
                return 'quit'
            else:
                url = srcs[selected]
        kodi.busy()
        try:
            if hmf.HostedMediaFile(url).valid_url():
                url = hmf.HostedMediaFile(url).resolve()
        except:
            pass
        kodi.idle()
        return url
    except:
        try:
            if hmf.HostedMediaFile(url[0][1]).valid_url():
                url = hmf.HostedMediaFile(url[0][1]).resolve()
            return url
        except:
            pass