Exemple #1
0
def get(url, params={}):
    try:
        if getVideostarCredentialsInfo() == False:
            if control.yesnoDialog(
                    control.lang(40001).encode('utf-8'),
                    control.lang(30481).encode('utf-8'), '', 'Trakt',
                    control.lang(30483).encode('utf-8'),
                    control.lang(30482).encode('utf-8')):
                control.openSettings('2.3')
            raise Exception()

        url = urlparse.urljoin('https://api.videostar.pl', url)
        result = client.request(url,
                                headers=headers,
                                cookie=control.get_setting('videostar.sess'))
        r = json.loads(result)

        if r['status'] == "error" or result == None:
            if r['errors'][0]['code'] == 1:
                login()
                control.sleep(500)
                mycookie = control.get_setting('videostar.sess')
                result = client.source(
                    url,
                    headers=headers,
                    cookie=control.get_setting('videostar.sess'))

        return result
    except Exception as e:
        control.log('Error videostar.get %s' % e)
        pass
Exemple #2
0
    def play(self, name, title, service, meta, url):
        #control.log('BBB1 %s %s %s %s' % (name, title, meta,service))

        try:
            if not control.infoLabel('Container.FolderPath').startswith(
                    'plugin://'):
                control.playlist.clear()

            control.resolve(int(sys.argv[1]), True, control.item(path=''))
            #control.execute('Dialog.Close(okdialog)')

            content = 'movie'
            url = self.sourcesDirect(service, meta)

            if url == None: raise Exception()
            if url == 'close://': return

            control.sleep(200)

            from resources.lib.lib.player import player
            player().run(name, url, meta, service)

            return url
        except:
            control.infoDialog(control.lang(30501).encode('utf-8'))
Exemple #3
0
def login():
    #f getVideostarCredentialsInfo() == False:
    #    raise Exception()
    params = {}
    #control.set_setting('videostar.sess', '')
    params['login'] = control.get_setting('videostar.user')
    params['password'] = control.get_setting('videostar.pass')
    params['permanent'] = 1
    url = 'https://api-pilot.wp.pl/user/login'
    result = client.request(url, post=params, headers=headers, output='cookie')
    control.log('ResultC videostar.get %s' % result)
    if result == '':
        control.infoDialog('Unauthorized')
        return None

    control.set_setting('videostar.sess', result)
    control.sleep(500)
    url = 'https://api-pilot.wp.pl/invitations/limit'
    headers['cookie'] = result
    result2 = client.request(url, headers=headers)
    if 'error' in result2:
        result2 = json.loads(result2)
        control.log('EEEEEEEEEEEE Result videostar.get %s' %
                    result2['errors'][0]['msg'])
        control.infoDialog(result2['errors'][0]['msg'].encode('utf-8'))

    control.sleep(500)
    return result
Exemple #4
0
def get(url, proxy=''):
    try:
        pl_proxy = control.setting('pl_proxy')
        pl_proxy_port = control.setting('pl_proxy_port')

        if getVideostarCredentialsInfo() == False:
            if control.yesnoDialog(
                    control.lang(40001).encode('utf-8'),
                    control.lang(30481).encode('utf-8'), '', 'Trakt',
                    control.lang(30483).encode('utf-8'),
                    control.lang(30482).encode('utf-8')):
                control.openSettings('1.11')
            raise Exception()

        url = urlparse.urljoin('https://api.videostar.pl', url)
        if proxy == '':
            result = client.request(
                url,
                headers=headers,
                cookie=control.get_setting('videostar.sess'))
        else:
            myproxy = pl_proxy
            if pl_proxy_port != '': myproxy = myproxy + ':' + pl_proxy_port

            myproxy_check = is_bad_proxy(myproxy)
            if not myproxy_check == '':
                control.dialog.ok(
                    control.addonInfo('name'),
                    control.lang(40013).encode('utf-8') + ' ' +
                    myproxy_check.encode('utf-8'), '')
                control.openSettings('0.11')
                return None

            result = client.request(
                url,
                headers=headers,
                cookie=control.get_setting('videostar.sess'),
                proxy=myproxy)
        r = json.loads(result)

        if r['status'] == "error" or result == None:
            if r['errors'][0]['code'] == 1:
                login()
                control.sleep(500)
                mycookie = control.get_setting('videostar.sess')
                result = client.source(
                    url,
                    headers=headers,
                    cookie=control.get_setting('videostar.sess'))

        return result
    except Exception as e:
        control.log('Error videostar.get %s' % e)
        pass
Exemple #5
0
def getstream(id):
    try:

        if wizjalogin():
            cookie = control.setting('wizja.token').strip()
            ref = 'http://wizja.tv/watch.php?id=%s' % id
            result = client.request(ref, headers=HOST, cookie=cookie)
            HOST['Referer'] = ref
            url = 'http://wizja.tv/porter.php?ch=%s' % id
            result = client.request(url, headers=HOST, cookie=cookie)
            mylink = re.compile('src: "(.*?)"').findall(result)
            mykill = re.compile('<a href="killme.php\?id=(.*?)" target="_top">'
                                ).findall(result)
            control.log('AMA %s|%s' % (mylink, mykill))
            if len(mylink) > 0:
                rtmp2 = urllib.unquote(mylink[0]).decode('utf8')
                rtmp1 = re.compile(
                    'rtmp://(.*?)/(.*?)/(.*?)\?(.*?)\&streamType').findall(
                        rtmp2)
                control.log('AMA1 %s' % (rtmp1))
                control.log('AMA2 %s' % (rtmp2))

                rtmp = 'rtmp://' + rtmp1[0][0] + '/' + rtmp1[0][
                    1] + '/' + rtmp1[0][2] + '?' + rtmp1[0][
                        3] + ' app=' + rtmp1[0][1] + '?' + rtmp1[0][
                            3] + ' swfVfy=1 flashver=WIN\\2020,0,0,306 timeout=25 swfUrl=http://wizja.tv/player/StrobeMediaPlayback.swf live=true pageUrl=' + ref
                control.log('AMA3 %s' % (rtmp))

                return rtmp
            #kill other sessions
            elif len(mykill) > 0:
                control.log('Error KILL %s' % mykill)
                urlkill = 'http://wizja.tv/killme.php?id=%s' % mykill[0]
                result = client.request(urlkill, headers=HOST, cookie=cookie)
                control.sleep(300)
                url = 'http://wizja.tv/porter.php?ch=%s' % id
                result = client.request(url, headers=HOST, cookie=cookie)
                mylink = re.compile('src: "(.*?)"').findall(result)
                if len(mylink) > 0:
                    rtmp2 = urllib.unquote(mylink[0]).decode('utf8')
                    rtmp1 = re.compile(
                        'rtmp://(.*?)/(.*?)/(.*?)\?(.*?)\&streamType').findall(
                            rtmp2)
                    rtmp = 'rtmp://' + rtmp1[0][0] + '/' + rtmp1[0][
                        1] + '/' + rtmp1[0][2] + '?' + rtmp1[0][
                            3] + ' app=' + rtmp1[0][1] + '?' + rtmp1[0][
                                3] + ' swfVfy=1 flashver=WIN\\2020,0,0,306 timeout=25 swfUrl=http://wizja.tv/player/StrobeMediaPlayback.swf live=true pageUrl=' + ref
                    return rtmp
            else:
                raise Exception('WWW: ' + result)
        else:
            return
    except Exception as e:
        control.log('Error wizja.getstream %s' % e)
Exemple #6
0
def getstream(id):
    try:
        if login():
            ref = 'http://wizja.tv/watch.php?id=%s' % id
            result = client2.http_get(ref)
            headers = {'Referer': ref}
            url = 'http://wizja.tv/porter.php?ch=%s' % id
            result = client2.http_get(url, headers=headers)
            #control.log('Error wizja.getstream %s' % result)
            #[SPECTO]: Error wizja.getstream WWW: <html><head>
            #<link rel="stylesheet" type="text/css" href="/white.css"></head><body><font size="3"><br><br><center><b><font color="#ff0000">Oglądasz zbyt wiele programów jednocześnie!</font></b><br><br>Zamknij pozostałe otwarte strony i spróbuj ponownie, <br>lub
            # <a href="killme.php?id=70" target="_top">zakończ wszystkie pozostałe połączenia i wpuść mnie!</a></font>
            #

            mylink = re.compile('src: "(.*?)"').findall(result)
            mykill = re.compile('<a href="killme.php\?id=(.*?)" target="_top">'
                                ).findall(result)
            if len(mylink) > 0:
                rtmp2 = urllib.unquote(mylink[0]).decode('utf8')
                rtmp1 = re.compile(
                    'rtmp://(.*?)/(.*?)/(.*?)\?(.*?)\&streamType').findall(
                        rtmp2)
                rtmp = 'rtmp://' + rtmp1[0][0] + '/' + rtmp1[0][
                    1] + '/' + rtmp1[0][2] + '?' + rtmp1[0][
                        3] + ' app=' + rtmp1[0][1] + '?' + rtmp1[0][
                            3] + ' swfVfy=1 flashver=WIN\\2020,0,0,306 timeout=25 swfUrl=http://wizja.tv/player/StrobeMediaPlayback.swf live=true pageUrl=' + ref
                return rtmp
            elif len(mykill) > 0:
                control.log('Error KILL %s' % mykill)
                urlkill = 'http://wizja.tv/killme.php?id=%s' % mykill[0]
                result = client2.http_get(urlkill, headers=headers)
                control.sleep(300)
                url = 'http://wizja.tv/porter.php?ch=%s' % id
                result = client2.http_get(url, headers=headers)
                mylink = re.compile('src: "(.*?)"').findall(result)
                if len(mylink) > 0:
                    rtmp2 = urllib.unquote(mylink[0]).decode('utf8')
                    rtmp1 = re.compile(
                        'rtmp://(.*?)/(.*?)/(.*?)\?(.*?)\&streamType').findall(
                            rtmp2)
                    rtmp = 'rtmp://' + rtmp1[0][0] + '/' + rtmp1[0][
                        1] + '/' + rtmp1[0][2] + '?' + rtmp1[0][
                            3] + ' app=' + rtmp1[0][1] + '?' + rtmp1[0][
                                3] + ' swfVfy=1 flashver=WIN\\2020,0,0,306 timeout=25 swfUrl=http://wizja.tv/player/StrobeMediaPlayback.swf live=true pageUrl=' + ref
                    return rtmp
            else:
                raise Exception('WWW: ' + result)
        else:
            return
    except Exception as e:
        control.log('Error wizja.getstream %s' % e)
Exemple #7
0
def getstream(id):
    try:
        if login():
            #Get cookies
            ref = 'http://wizja.tv/watch.php?id=%s' % id
            result = client2.http_get(ref)
            headers = {'Referer': ref}
            url = 'http://wizja.tv/porter.php?ch=%s' % id
            result = client2.http_get(url, headers=headers)
            mylink = re.compile('src: "(.*?)"').findall(result)
            mykill = re.compile('<a href="killme.php\?id=(.*?)" target="_top">'
                                ).findall(result)
            if len(mylink) > 0:
                rtmp2 = urllib.unquote(mylink[0]).decode('utf8')
                rtmp1 = re.compile(
                    'rtmp://(.*?)/(.*?)/(.*?)\?(.*?)\&streamType').findall(
                        rtmp2)
                rtmp = 'rtmp://' + rtmp1[0][0] + '/' + rtmp1[0][
                    1] + '/' + rtmp1[0][2] + '?' + rtmp1[0][
                        3] + ' app=' + rtmp1[0][1] + '?' + rtmp1[0][
                            3] + ' swfVfy=1 flashver=WIN\\2020,0,0,306 timeout=25 swfUrl=http://wizja.tv/player/StrobeMediaPlayback.swf live=true pageUrl=' + ref
                return rtmp
            #kill other sessions
            elif len(mykill) > 0:
                control.log('Error KILL %s' % mykill)
                urlkill = 'http://wizja.tv/killme.php?id=%s' % mykill[0]
                result = client2.http_get(urlkill, headers=headers)
                control.sleep(300)
                url = 'http://wizja.tv/porter.php?ch=%s' % id
                result = client2.http_get(url, headers=headers)
                mylink = re.compile('src: "(.*?)"').findall(result)
                if len(mylink) > 0:
                    rtmp2 = urllib.unquote(mylink[0]).decode('utf8')
                    rtmp1 = re.compile(
                        'rtmp://(.*?)/(.*?)/(.*?)\?(.*?)\&streamType').findall(
                            rtmp2)
                    rtmp = 'rtmp://' + rtmp1[0][0] + '/' + rtmp1[0][
                        1] + '/' + rtmp1[0][2] + '?' + rtmp1[0][
                            3] + ' app=' + rtmp1[0][1] + '?' + rtmp1[0][
                                3] + ' swfVfy=1 flashver=WIN\\2020,0,0,306 timeout=25 swfUrl=http://wizja.tv/player/StrobeMediaPlayback.swf live=true pageUrl=' + ref
                    return rtmp
            else:
                raise Exception('WWW: ' + result)
        else:
            return
    except Exception as e:
        control.log('Error wizja.getstream %s' % e)
Exemple #8
0
def setView(content, viewDict=None):
    for i in range(0, 200):
        if control.condVisibility('Container.Content(%s)' % content):
            try:
                skin = control.skin
                record = (skin, content)
                dbcon = database.connect(control.databaseFile)
                dbcur = dbcon.cursor()
                dbcur.execute("SELECT * FROM views WHERE skin = '%s' AND view_type = '%s'" % (record[0], record[1]))
                view = dbcur.fetchone()
                view = view[2]
                if view == None: raise Exception()
                return control.execute('Container.SetViewMode(%s)' % str(view))
            except:
                try: return control.execute('Container.SetViewMode(%s)' % str(viewDict[skin]))
                except: return

        control.sleep(100)
Exemple #9
0
def getstream(id):
    try:

        if wizjalogin():
            cookie = control.setting('wizja.token').strip()
            ref='http://wizja.tv/watch.php?id=%s' % id
            result =  client.request(ref, headers=HOST, cookie=cookie)
            HOST['Referer']=ref
            url = 'http://wizja.tv/porter.php?ch=%s' % id
            result =  client.request(url, headers=HOST, cookie=cookie)
            mylink = re.compile('src: "(.*?)"').findall(result)
            mykill = re.compile('<a href="killme.php\?id=(.*?)" target="_top">').findall(result)
            control.log('AMA %s|%s' %(mylink,mykill))
            if len(mylink)>0:
                rtmp2 = urllib.unquote(mylink[0]).decode('utf8')
                rtmp1 = re.compile('rtmp://(.*?)/(.*?)/(.*?)\?(.*?)\&streamType').findall(rtmp2)
                control.log('AMA1 %s' % (rtmp1))
                control.log('AMA2 %s' % (rtmp2))

                rtmp = 'rtmp://' + rtmp1[0][0] + '/' + rtmp1[0][1] +'/' +rtmp1[0][2]+ '?'+ rtmp1[0][3]+ ' app=' + rtmp1[0][1] + '?' +rtmp1[0][3]+' swfVfy=1 flashver=WIN\\2020,0,0,306 timeout=25 swfUrl=http://wizja.tv/player/StrobeMediaPlayback.swf live=true pageUrl='+ref
                control.log('AMA3 %s' % (rtmp))

                return rtmp
            #kill other sessions
            elif len(mykill)>0:
                control.log('Error KILL %s' % mykill)
                urlkill = 'http://wizja.tv/killme.php?id=%s' % mykill[0]
                result = client.request(urlkill , headers=HOST, cookie=cookie)
                control.sleep(300)
                url = 'http://wizja.tv/porter.php?ch=%s' % id
                result = client.request(url, headers=HOST, cookie=cookie)
                mylink = re.compile('src: "(.*?)"').findall(result)
                if len(mylink)>0:
                    rtmp2 = urllib.unquote(mylink[0]).decode('utf8')
                    rtmp1 = re.compile('rtmp://(.*?)/(.*?)/(.*?)\?(.*?)\&streamType').findall(rtmp2)
                    rtmp = 'rtmp://' + rtmp1[0][0] + '/' + rtmp1[0][1] +'/' +rtmp1[0][2]+ '?'+ rtmp1[0][3]+ ' app=' + rtmp1[0][1] + '?' +rtmp1[0][3]+' swfVfy=1 flashver=WIN\\2020,0,0,306 timeout=25 swfUrl=http://wizja.tv/player/StrobeMediaPlayback.swf live=true pageUrl='+ref
                    return rtmp
            else:
                raise Exception('WWW: '+result)
        else:
            return
    except Exception as e:
        control.log('Error wizja.getstream %s' % e)
Exemple #10
0
    def onPlayBackStarted(self):

        for i in range(0, 200):
            if control.condVisibility('Window.IsActive(busydialog)') == 1: control.idle()
            else: break
            control.sleep(100)

        try:
            while(True):
                if self._playing == True:
                    if self._service =='pierwsza':
                        #control.log('PLAYBACK AAAAAAAAAAAAA %s' )
                        pierwsza.streamrefresh()
                        control.sleep(5000)
                    else:
                        break
                else:
                    break
        except:
            pass
Exemple #11
0
def login():
    try:
        client2._clean_cookies('http://wizja.tv/users/index.php')
        control.sleep(300)
        params = {}
        url = 'http://wizja.tv/users/index.php'
        result = client2.http_get(url)
        params['login'] = '******'
        params['user_name'] = control.get_setting('wizja.user')
        params['user_password'] = control.get_setting('wizja.pass')
        result = client2.http_get(url, data=params)
        control.sleep(300)
        #control.log('DATA %s' % result)
        if 'o..</font><br>' in result:  #zly login
            control.log('WIZJA.TV ZLY LOGIN: %s' % result)
            control.infoDialog(control.lang(30486).encode('utf-8'), time=6000)
            raise Exception()
        elif 'Zalogowany jako :' in result:
            if '<font color=ff0000>Brak premium' in result:
                control.log('WIZJA.TV BRAK PREMIUM: %s' % result)
                control.infoDialog(control.lang(30490).encode('utf-8'),
                                   time=6000)
                raise Exception('NO premium')
            else:
                return True
        elif '<font color="#FF0000">Wpisa' in result:
            control.log(
                'WIZJA.TV zbyt wiele razy pobowales - poczekaj 60 minut: %s' %
                result)
            control.infoDialog(control.lang(30487).encode('utf-8'), time=6000)
            raise Exception('zbyt wiele razy pobowales - poczekaj 60 minut')
        else:
            control.log('WIZJA.TV inny blad: %s' % result)
            control.infoDialog(control.lang(30488).encode('utf-8'), time=6000)
            raise Exception('Inny bład: ' + result)
        return False

    except Exception as e:
        control.log('Error wizja.login %s' % e)
        return False
Exemple #12
0
def get(url, params={}):
    try:
        if getVideostarCredentialsInfo() == False:
            if control.yesnoDialog(control.lang(40001).encode('utf-8'), control.lang(30481).encode('utf-8'), '', 'Trakt', control.lang(30483).encode('utf-8'), control.lang(30482).encode('utf-8')):
                control.openSettings('2.3')
            raise Exception()

        url = urlparse.urljoin('https://api.videostar.pl', url)
        result = client.request(url, headers=headers, cookie=control.get_setting('videostar.sess'))
        r = json.loads(result)

        if r['status'] =="error" or result==None:
            if r['errors'][0]['code'] == 1:
                login()
                control.sleep(500)
                mycookie = control.get_setting('videostar.sess')
                result = client.source(url, headers=headers, cookie=control.get_setting('videostar.sess'))

        return result
    except Exception as e:
        control.log('Error videostar.get %s' % e)
        pass
Exemple #13
0
def setView(content, viewDict=None):
    for i in range(0, 200):
        if control.condVisibility('Container.Content(%s)' % content):
            try:
                skin = control.skin
                record = (skin, content)
                dbcon = database.connect(control.databaseFile)
                dbcur = dbcon.cursor()
                dbcur.execute(
                    "SELECT * FROM views WHERE skin = '%s' AND view_type = '%s'"
                    % (record[0], record[1]))
                view = dbcur.fetchone()
                view = view[2]
                if view == None: raise Exception()
                return control.execute('Container.SetViewMode(%s)' % str(view))
            except:
                try:
                    return control.execute('Container.SetViewMode(%s)' %
                                           str(viewDict[skin]))
                except:
                    return

        control.sleep(100)
Exemple #14
0
def login():
    #f getVideostarCredentialsInfo() == False:
    #    raise Exception()
    params = {}
    #control.set_setting('videostar.sess', '')
    params['login'] = control.get_setting('videostar.user')
    params['password'] = control.get_setting('videostar.pass')
    params['permanent']=1
    url = 'https://api.videostar.pl/user/login'
    result = client.request(url, post=params, headers=headers, output='cookie')
    control.log('ResultC videostar.get %s' % result)

    control.set_setting('videostar.sess', result)
    url='https://api.videostar.pl/invitations/limit'
    headers['cookie']=result
    result2 = client.request(url, headers=headers)
    if 'error' in  result2:
        result2 = json.loads(result2)
        control.log('EEEEEEEEEEEE Result videostar.get %s' % result2['errors'][0]['msg'])
        control.infoDialog(result2['errors'][0]['msg'].encode('utf-8'))

    control.sleep(500)
    return result
Exemple #15
0
def get(url, proxy=''):
    try:
        pl_proxy = control.setting('pl_proxy')
        pl_proxy_port = control.setting('pl_proxy_port')

        if getVideostarCredentialsInfo() == False:
            if control.yesnoDialog(control.lang(40001).encode('utf-8'), control.lang(30481).encode('utf-8'), '', 'Trakt', control.lang(30483).encode('utf-8'), control.lang(30482).encode('utf-8')):
                control.openSettings('1.11')
            raise Exception()

        url = urlparse.urljoin('https://api.videostar.pl', url)
        if proxy == '':
            result = client.request(url, headers=headers, cookie=control.get_setting('videostar.sess'))
        else:
            myproxy = pl_proxy
            if pl_proxy_port != '': myproxy = myproxy + ':' + pl_proxy_port

            myproxy_check = is_bad_proxy(myproxy)
            if not myproxy_check == '':
                control.dialog.ok(control.addonInfo('name'), control.lang(40013).encode('utf-8') + ' ' + myproxy_check.encode('utf-8'), '')
                control.openSettings('0.11')
                return None

            result = client.request(url, headers=headers, cookie=control.get_setting('videostar.sess'), proxy=myproxy)
        r = json.loads(result)

        if r['status'] =="error" or result==None:
            if r['errors'][0]['code'] == 1:
                login()
                control.sleep(500)
                mycookie = control.get_setting('videostar.sess')
                result = client.source(url, headers=headers, cookie=control.get_setting('videostar.sess'))

        return result
    except Exception as e:
        control.log('Error videostar.get %s' % e)
        pass
Exemple #16
0
    def play(self, name, title, service, meta, url):
        #control.log('BBB1 %s %s %s %s' % (name, title, meta,service))

        try:
            if not control.infoLabel('Container.FolderPath').startswith('plugin://'):
                control.playlist.clear()

            control.resolve(int(sys.argv[1]), True, control.item(path=''))
            #control.execute('Dialog.Close(okdialog)')

            content = 'movie'
            url = self.sourcesDirect(service, meta)

            if url == None: raise Exception()
            if url == 'close://': return

            control.sleep(200)

            from resources.lib.lib.player import player
            player().run(name, url, meta,service)

            return url
        except:
            control.infoDialog(control.lang(30501).encode('utf-8'))
Exemple #17
0
    def playItem(self, content, name, year, imdb, tvdb, source):
        try:
            control.resolve(int(sys.argv[1]), True, control.item(path=''))
            control.execute('Dialog.Close(okdialog)')

            next = []
            prev = []
            total = []
            meta = None

            for i in range(1, 10000):
                try:
                    u = control.infoLabel('ListItem(%s).FolderPath' % str(i))
                    if u in total: raise Exception()
                    total.append(u)
                    u = dict(urlparse.parse_qsl(u.replace('?', '')))
                    if 'meta' in u: meta = u['meta']
                    u = json.loads(u['source'])[0]
                    next.append(u)
                except:
                    break
            for i in range(-10000, 0)[::-1]:
                try:
                    u = control.infoLabel('ListItem(%s).FolderPath' % str(i))
                    if u in total: raise Exception()
                    total.append(u)
                    u = dict(urlparse.parse_qsl(u.replace('?', '')))
                    if 'meta' in u: meta = u['meta']
                    u = json.loads(u['source'])[0]
                    prev.append(u)
                except:
                    break

            items = json.loads(source)

            source, quality = items[0]['source'], items[0]['quality']
            items = [
                i for i in items + next + prev
                if i['quality'] == quality and i['source'] == source
            ][:10]
            items += [
                i for i in next + prev
                if i['quality'] == quality and not i['source'] == source
            ][:10]

            self.progressDialog = control.progressDialog
            self.progressDialog.create(control.addonInfo('name'), '')
            self.progressDialog.update(0)

            block = None

            for i in range(len(items)):
                try:
                    self.progressDialog.update(
                        int((100 / float(len(items))) * i),
                        str(items[i]['label']), str(' '))

                    if items[i]['source'] == block: raise Exception()

                    w = workers.Thread(self.sourcesResolve, items[i]['url'],
                                       items[i]['provider'])
                    w.start()

                    m = ''

                    for x in range(3600):
                        if self.progressDialog.iscanceled():
                            return self.progressDialog.close()
                        if xbmc.abortRequested == True: return sys.exit()
                        k = control.condVisibility(
                            'Window.IsActive(virtualkeyboard)')
                        if k:
                            m += '1'
                            m = m[-1]
                        if (w.is_alive() == False or x > 30) and not k: break
                        time.sleep(1)

                    for x in range(30):
                        if m == '': break
                        if self.progressDialog.iscanceled():
                            return self.progressDialog.close()
                        if xbmc.abortRequested == True: return sys.exit()
                        if w.is_alive() == False: break
                        time.sleep(1)

                    if w.is_alive() == True: block = items[i]['source']

                    if self.url == None: raise Exception()

                    try:
                        self.progressDialog.close()
                    except:
                        pass

                    control.sleep(200)

                    if control.setting('playback_info') == 'true':
                        control.infoDialog(items[i]['label'], heading=name)

                    from resources.lib.lib.player import player
                    player().run(content, name, self.url, year, imdb, tvdb,
                                 meta)

                    return self.url
                except:
                    pass

            try:
                self.progressDialog.close()
            except:
                pass

            raise Exception()

        except:
            control.infoDialog(control.lang(30501).encode('utf-8'))
            pass
Exemple #18
0
def wizjalogin():
    try:
        params = {}
        url = 'http://wizja.tv/users/index.php'
        #result, headers, content, cookie = client.request(url, output='extended')

        params['login'] = '******'
        params['user_name'] = control.get_setting('wizja.user')
        params['user_password'] = control.get_setting('wizja.pass')

        #login to site
        result, headers, content, cookie = client.request(url,
                                                          post=params,
                                                          headers=HOST,
                                                          output='extended')
        control.set_setting('wizja.token', cookie)

        #wrong login
        if '<font color="#FF0000">Błędne hasło..</font>' in result:  #zly login
            control.log('WIZJA.TV ZLY LOGIN: %s' % result)
            control.infoDialog(control.lang(30497).encode('utf-8'), time=6000)
            control.dialog.ok(
                control.addonInfo('name') + ' - WIZJA TV',
                control.lang(30497).encode('utf-8'), '')
            raise Exception()
        elif 'lub hasło.</font>' in result:  #zly login
            control.log('WIZJA.TV ZLY LOGIN: %s' % result)
            control.infoDialog(control.lang(30486).encode('utf-8'), time=6000)
            control.dialog.ok(
                control.addonInfo('name') + ' - WIZJA TV',
                control.lang(30486).encode('utf-8'), '')

            raise Exception()

        elif 'Zalogowany jako :' in result:
            #no premium
            if '<font color=ff0000>Brak premium' in result:
                control.log('WIZJA.TV BRAK PREMIUM: %s' % result)
                control.infoDialog(control.lang(30490).encode('utf-8'),
                                   time=6000)
                control.dialog.ok(
                    control.addonInfo('name') + ' - WIZJA TV',
                    control.lang(30490).encode('utf-8'), '')

                raise Exception('NO premium')
            else:
                try:
                    premium = re.findall(
                        'Premium aktywne do (\d{4}.*?)</font>', result)[0]
                    control.set_setting('wizja.expire', premium)
                    control.infoDialog('Premium Wizja.tv do: ' +
                                       premium.encode('utf-8'),
                                       time=2000)
                    control.sleep(500)
                except:
                    pass
                return True, cookie
        #account locked - wait 60 minutes
        elif '<font color="#FF0000">Wpisa' in result:
            control.log(
                'WIZJA.TV zbyt wiele razy pobowales - poczekaj 60 minut: %s' %
                result)
            control.infoDialog(control.lang(30487).encode('utf-8'), time=6000)
            control.dialog.ok(
                control.addonInfo('name') + ' - WIZJA TV',
                control.lang(30487).encode('utf-8'), '')

            raise Exception('zbyt wiele razy pobowales - poczekaj 60 minut')
        #Other error
        else:
            control.log('WIZJA.TV inny blad: %s' % result)
            control.infoDialog(control.lang(30488).encode('utf-8'), time=6000)
            raise Exception('Inny bład: ' + result)
        return False

    except Exception as e:
        control.log('Error wizja.login %s' % e)
        return False
Exemple #19
0
    def playItem(self, content, name, year, imdb, tvdb, source):
        try:
            control.resolve(int(sys.argv[1]), True, control.item(path=''))
            control.execute('Dialog.Close(okdialog)')

            next = [] ; prev = [] ; total = []
            meta = None

            for i in range(1,10000):
                try:
                    u = control.infoLabel('ListItem(%s).FolderPath' % str(i))
                    if u in total: raise Exception()
                    total.append(u)
                    u = dict(urlparse.parse_qsl(u.replace('?','')))
                    if 'meta' in u: meta = u['meta']
                    u = json.loads(u['source'])[0]
                    next.append(u)
                except:
                    break
            for i in range(-10000,0)[::-1]:
                try:
                    u = control.infoLabel('ListItem(%s).FolderPath' % str(i))
                    if u in total: raise Exception()
                    total.append(u)
                    u = dict(urlparse.parse_qsl(u.replace('?','')))
                    if 'meta' in u: meta = u['meta']
                    u = json.loads(u['source'])[0]
                    prev.append(u)
                except:
                    break

            items = json.loads(source)

            source, quality = items[0]['source'], items[0]['quality']
            items = [i for i in items+next+prev if i['quality'] == quality and i['source'] == source][:10]
            items += [i for i in next+prev if i['quality'] == quality and not i['source'] == source][:10]

            self.progressDialog = control.progressDialog
            self.progressDialog.create(control.addonInfo('name'), '')
            self.progressDialog.update(0)

            block = None

            for i in range(len(items)):
                try:
                    self.progressDialog.update(int((100 / float(len(items))) * i), str(items[i]['label']), str(' '))

                    if items[i]['source'] == block: raise Exception()

                    w = workers.Thread(self.sourcesResolve, items[i]['url'], items[i]['provider'])
                    w.start()

                    m = ''

                    for x in range(3600):
                        if self.progressDialog.iscanceled(): return self.progressDialog.close()
                        if xbmc.abortRequested == True: return sys.exit()
                        k = control.condVisibility('Window.IsActive(virtualkeyboard)')
                        if k: m += '1'; m = m[-1]
                        if (w.is_alive() == False or x > 30) and not k: break
                        time.sleep(1)

                    for x in range(30):
                        if m == '': break
                        if self.progressDialog.iscanceled(): return self.progressDialog.close()
                        if xbmc.abortRequested == True: return sys.exit()
                        if w.is_alive() == False: break
                        time.sleep(1)


                    if w.is_alive() == True: block = items[i]['source']

                    if self.url == None: raise Exception()

                    try: self.progressDialog.close()
                    except: pass

                    control.sleep(200)

                    if control.setting('playback_info') == 'true':
                        control.infoDialog(items[i]['label'], heading=name)

                    from resources.lib.lib.player import player
                    player().run(content, name, self.url, year, imdb, tvdb, meta)

                    return self.url
                except:
                    pass

            try: self.progressDialog.close()
            except: pass

            raise Exception()

        except:
            control.infoDialog(control.lang(30501).encode('utf-8'))
            pass
Exemple #20
0
def login():
    try:
        #clean cookies
        client2._clean_cookies('http://wizja.tv/users/index.php')
        control.sleep(300)
        params = {}
        url = 'http://wizja.tv/users/index.php'
        result = client2.http_get(url)
        params['login'] = '******'
        params['user_name'] = control.get_setting('wizja.user')
        params['user_password'] = control.get_setting('wizja.pass')

        #login to site
        result = client2.http_get(url, data=params)
        control.sleep(300)
        control.log('WIZJA %s' % result)

        #wrong login
        if '<font color="#FF0000">Błędne hasło..</font>' in result:  #zly login
            control.log('WIZJA.TV ZLY LOGIN: %s' % result)
            control.infoDialog(control.lang(30497).encode('utf-8'), time=6000)
            control.dialog.ok(
                control.addonInfo('name') + ' - WIZJA TV',
                control.lang(30497).encode('utf-8'), '')

            raise Exception()
        elif 'lub hasło.</font>' in result:  #zly login
            control.log('WIZJA.TV ZLY LOGIN: %s' % result)
            control.infoDialog(control.lang(30486).encode('utf-8'), time=6000)
            control.dialog.ok(
                control.addonInfo('name') + ' - WIZJA TV',
                control.lang(30486).encode('utf-8'), '')

            raise Exception()

        elif 'Zalogowany jako :' in result:
            #no premium
            if '<font color=ff0000>Brak premium' in result:
                control.log('WIZJA.TV BRAK PREMIUM: %s' % result)
                control.infoDialog(control.lang(30490).encode('utf-8'),
                                   time=6000)
                control.dialog.ok(
                    control.addonInfo('name') + ' - WIZJA TV',
                    control.lang(30490).encode('utf-8'), '')

                raise Exception('NO premium')
            else:
                #all ok, return True
                return True
        #account locked - wait 60 minutes
        elif '<font color="#FF0000">Wpisa' in result:
            control.log(
                'WIZJA.TV zbyt wiele razy pobowales - poczekaj 60 minut: %s' %
                result)
            control.infoDialog(control.lang(30487).encode('utf-8'), time=6000)
            control.dialog.ok(
                control.addonInfo('name') + ' - WIZJA TV',
                control.lang(30487).encode('utf-8'), '')

            raise Exception('zbyt wiele razy pobowales - poczekaj 60 minut')
        #Other error
        else:
            control.log('WIZJA.TV inny blad: %s' % result)
            control.infoDialog(control.lang(30488).encode('utf-8'), time=6000)
            raise Exception('Inny bład: ' + result)
        return False

    except Exception as e:
        control.log('Error wizja.login %s' % e)
        return False