Kodi-vStream / venom-xbmc-addons

Addon de Streaming français pour Xbmc
GNU General Public License v3.0
488 stars 275 forks source link

Uptostream ne fonctionne plus. #2793

Closed rgalich closed 4 years ago

rgalich commented 4 years ago

Décrivez le bug Uptostream ne semble plus fonctionner. Pour tous les liens j'ai le message '' Ficher introuvable ''

Votre system

Ma2tr11 commented 4 years ago

J arrive a contourner avec l onglet tool du menu principal de vstream et hoster en copiant les lien uptobox et sa fonctionne bien pour moi.

TmpName commented 4 years ago

Pour info ils viennent de remodifier le code, en remontant le niveau.

Arias800 commented 4 years ago

Donc a force le décodage va prendre une plombe xD

TmpName commented 4 years ago

Yep je viens de finir > https://github.com/TmpName/TinyJSParser Plusieurs minutes avec les logs, un peu moins d'une minute sans.

Mais il y a rien d'optimisé, et j'utilise du code nettoyé, pas le code brut.

Le code JS se trouve a une url du type uptostream.com/api/streaming/source/get?file_code=ID

iamnob0dy commented 4 years ago

Bonjour! :) ..je vais surement passer pour un n00b! :P mais bon ..

J'ai collé les fichiers tinyjsparser.py et up2stream.js dans les dossiers "lib" et "hosters" de plugin.video.vstream/resources respectivement et ca ne semble pas marcher!

Ai-je fais la bonne manip'? ..ou ai'je tout faux!? :P ..si c'est le cas pourriez vous me guider! ..je suis sous Android!

Merci d'avance! :)

Arias800 commented 4 years ago

Faut faire beaucoup de modif et le code est toujours entrain d’être modifier par TmpName. Donc pour le moment ce n'est pas corriger.

iamnob0dy commented 4 years ago

Merci pour l'eclaircissement @Arias800 ! :)

eco-plus commented 4 years ago

a cause du confinement j'ai commencé une version python. j'ai tous ce qu'il faut mais pas dans l'ordre :) apres on peut toujours reconstruire l'url il manque juste l'id qui est dedans exemple de code pour 3 qualité : [{'lPSXZ': 'YNyrM', 'STnCm': 0, 'HmFJM': 'video/mp4', 'IrKuN': 0, 'mgnDN': 0, 'NDLRm': 'video.mp4', 'HKiMn': '720p', 'FQUfy': 0, 'HDmre': 0, 'bDXPw': '**1w3cyhp5724**', 'vRGNi': 'hrNIA', 'VOyuf': 'swjlB', 'kMQAP': 'XIJqp', 'bUQIg': 'fre', 'suzlu': 0, 'IrTPj': 'unknown 0', 'KzLXe': 0, 'PoqPb': '720', 'slQZI': 'QeQdt', 'WwdSW': 0, 'uduKO': 0}, {'WblTx': 0, 'SXrPn': 0, 'iwKjS': 'fre', 'NHgfL': 0, 'eRTVC': 0, 'QxPKe': '**1w3cyhp5724**', 'LkxEB': 'PsjWX', 'wGFYI': 'unknown 0', 'nGmgB': 'ht tps://ww w 22.upto stream.com', 'xBYMC': 0, 'XBPeX': '480p', 'HTJsy': 'video/mp4', 'oQfsQ': '480', 'WxEYT': 'AlRHd', 'kkQda': 0}, {'KSRuo': 'xjsgm', 'pqkuN': 0, 'hpzDG': 0, 'sCgkR': 'fre', 'pAtZA': 0, 'EWoBK': 'ht tps://ww w22.upt ostream.com', 'pseNW': '**1w3cyhp5724**', 'njCVm': 0, 'eWvfg': '360p', 'UWKRc': 'video\\/mp4', 'vvWdq': 'unknown 0', 'PPagu': 0, 'fTxGI': 'ofxBb', 'JOjaN': '360'}]

edit: ne testé pas le lien c'est un faux.

TmpName commented 4 years ago

Normallement j'ai une version qui fonctionne https://github.com/TmpName/TinyJSParser

Il faut juste recuperer le fichier (le fichier JS est a part) et ca donne un json, par contre il y a 20/30s de calcul minimum.

Le code n'est pas du tout optimisé et bourré de hack, mais ce matin ca marchait encore et avec le code juste recupéré sans modifs.

Par contre ca tourne SANS kodi, pas la peine de copier les fichiers dedans.

ludopotte commented 4 years ago

Pour les Gens qui utilise un Débrideur pour les Liens, par rapport à Uptobox, il faut juste avoir votre Système d’Exploitation à jour et Annuler l’Autorisation de Visionnage demandé et ça fonctionne.

TmpName commented 4 years ago

Bon j'ai voulu continuer et j'ai trouvé un soucis. Le lien

Apparait quand on demande le code source de la page, mais pas dans le code html quand on telecharge la page via Vstream, j'ai essayé en changeant les headers, avec Request (car la lib de vstream donne une erreur) Si quelqu'un voit le soucis ...

Arias800 commented 4 years ago

Chez moi il apparait pas du tout, même avec un navigateur internet. Peut être que c'est temporaire.

eco-plus commented 4 years ago

continuer quoi ? je pensé que c'était ok avec jsparser il faut envoyé une requête sur ht tps://upto stream.com/api/streaming/source/get?token={letoken}&file_code={id de l'url} ,referer si besoin etc... et ont a le js

TmpName commented 4 years ago

@eco-plus Ha j'avais pas vu ce lien, je teste avec pour voir.

Et degouté pr netu.

TmpName commented 4 years ago

Bon alors ca marche avec le lien de @eco-plus mais par contre chez moi j'ai 3mn de decodage ...

Arias800 commented 4 years ago

Chez moi ça tourne en boucle (au moins depuis 10 minutes ) xD

eco-plus commented 4 years ago

@TmpName sur ton commit c9c1baabd18ff20b59b8ce6cac1ded2e8d04e069 tu ne prend pas en compte le choix quailté. 3mn ça fait beaucoup trop il doit y avoir un soucis.

edit: pour le token pourquoi tu mets 'null' ? il est dispo sur la page de base du 1er lien que la classes reçoit.

edit2: il faut aussi mettre la modif sur les liens up to box quand on passe par up 2 stream pour le compte gratuit.

edit 3: pour le token si on ne s'identifie pas comme c'est le cas avec les liens direct up 2 stre am on a pas le token.

eco-plus commented 4 years ago

il y a quelqu'un connecté avec un compte gratuit ou premium? @Arias800 @TmpName

c'est du bricolage vers la fin mais bon testez ça ici maintenant on peut utilisé loggé avec son compte gratuit ou premium edit :ne gere pas les subs pour le moment.

TmpName commented 4 years ago

Yep, c'est juste un proto pr tester.

J'ai mit "null" car c'est ce qu'envoir firefox chez moi, et du coup pas de scrapping de la premiere page (j'ai desactive les sous tiitre a cause de ca), ca marche pas de ton coté sans le token ?

La pour le moment je cherche a voir pr le 3mn, quite a modifier le code js a la base, car moi aussi je comprend pas, la plus grosse boucle se fait quasiment de suite.

eco-plus commented 4 years ago

j'ai pas testé sans compte mais ça doit le faire ,moi j'ai toujours utilisé mon compte gratuit parce qu'il y a longtemps ça fonctionné plus en free

alKODIque commented 4 years ago

Si quelqu’un a besoin d’un compte premium up 2 box pour tester juste à me dire

eco-plus commented 4 years ago

mon code fonctionne avec un compte gratuit donc il doit fonctionné en payant ( je parle up 2 stream) mais je sais pas si vous avez le code js en payant.

eco-plus commented 4 years ago

bon c'est pas fiable et demande des modifs pour des version variantes. pour ton code @TmpName c'est quand il y a plusieurs choix de qualité qu'il est long. et dans le code il y a beaucoup de fonction a éxécuté et de comparaison de dictionnaire, après on dirait une boucle while qui galère

sizanic commented 4 years ago

Je vais essayer de regarder pour la lenteur. Vous avez un exemple de site/film ?

TmpName commented 4 years ago

Moi j'utilise "outpost" saison 2 sur voirflm qui a encore des liens fonctionnels.

Sinon j'ai retesté en mettaznt des ligne de debug dans le code JS (des window.alert("1"); et pas de boucles superflues, c'est bien le code qui est hyper lent, mais la j'ai pas trouvé comment l'ameliorer.

Coté python, y a la gestion des stack memoire a refaire, mais je pense pas que ca l'accelere Coté JS le code bouge trop, pour le "corriger" avant traitement.

sizanic commented 4 years ago

sur outpost S02E13, j'arrive jusqu'au lien http s://up to stream.com/api/streaming/source/get?token=null&file_code=kpe08jb8fhzu

Avec ce lien directement dans un navigateur, j'ai le retour attendu, du style : {"statusCode":0,"message":"Success","data":{"sources":"var _0x1b0f=...

Mais dans vStream, la page html retournée est ceci :

<html>
<head>
<title>Uptostream</title>
<link rel="icon" type="image/ico" href="/assets/images/utb.png">
<link rel="stylesheet" type="text/css" href="/dist/uptostream.min.css?cacheKiller=1586620092">
</head>
<body>
<div id='navbar'>
<a class='logoLink' href='/'><div class='navbar-logo uts'></div></a>
<div class='navbar-items'>
<ul>
<li><a href='https://uptostream.com/'>Accueil</a></li>
<li><a href='https://uptobox.com/payments'>Devenir Premium</a></li>
<li><a href='https://uptostream.com/login?referer=kpe08jb8fhzu'>Connexion</a></li>
<li><a href='https://uptostream.com/registration'>Inscription</a></li>
...

c'est quoi mon problème ?

TmpName commented 4 years ago

Ha oui j'avais le meme probleme, c'est pour ca que j'ai refais mon code en utilisant le lien de @eco-plus, le mien etait plus court, mais pas le meme resultat sur navigateur et Vstream > https://github.com/Kodi-vStream/venom-xbmc-addons/issues/2793#issuecomment-610404852

Si tu utilises la version de la beta, tu as pas le lien en log ? J'ai testé ce fichier hier soir, et il a fonctionné.

Arias800 commented 4 years ago

Si tu utilise un compte ça fait automatiquement basculer sur le fichier upt box.py et n'ont pas utpo stream.py (donc suffit de désactiver ton compte vu que le fichier upt box.py n'a pas été mis a jour)

sizanic commented 4 years ago

J'ai pas de compte c'est pourquoi il me fallait un lien direct uptostream. J'utilise le lien de : outpost S02E13 : http s://up to stream.com/api/streaming/source/get?token=null&file_code=kpe08jb8fhzu

Encore maintenant il s'ouvre bien dans un navigateur, je n'ai pas besoin d'un autre. @TmpName tu as développé un contournement pour ne pas avoir du html, jen'ai pas compris ta réponse ?

Pour rediriger uptobox sans compte vers uptostream, je mis ça dans uptobox :

    def __getMediaLinkForGuest(self):

        from resources.hosters.uptostream import cHoster
        oHoster = cHoster()
        oHoster.setUrl(self.__sUrl)
        api_call = oHoster.__getMediaLinkForGuest()
        if (api_call[0] == True):
            return True, api_call[1]
        return False, False
sizanic commented 4 years ago

Alors voilà, j'ai testé le code de la beta, et il est super long ici : sHtmlContent = JP.ProcessJS(JScode,Liste_var)

Comme dit @eco-plus on dirait des boucles récursives qui galèrent entres elles.

Alors qu'avec le code de @eco-plus ici : https://gist.github.com/eco-plus/519e16fd4201652548dd88a6ba5b0eed

C'est super rapide !

Mais pour ça j'ai dû corriger deux petites boulettes :

ligne 98, j'a ajouté token = '' , sinon ça plante à la ligne 109. ligne 116, c'est sUrl2 qu'il faut utiliser, pas self.__sUrl :

oRequest = cRequestHandler(sUrl2)

(c'était ça mon probleme entre le html de vstream et celui du site, ce n'était pas la même url)

On ne peut pas l'utiliser parce qu'il ne gère pas les mutli-qualités ?

sizanic commented 4 years ago

Alors dans la version de @eco-plus qui gère plusieurs qualité, il y un souci en effet car lorsqu'on trouve 4 qualités on pense que c'est : 360, 480, 720 et 1080.

Alors que parfois il y a deux langues et les liens sont : 360(fre), 480(fre), 360(eng) et 480(eng).

Exemple ici pour le lien uptobox : http s://ww v.zone - annuaire. com/film-gratuit/70628-telecharger-les-trolls-2-tournee-mondiale-web-dl-1080p-multi.html

Comme c'était difficile d'associer la bonne langue avec la bonne qualité, j'ai retenu que les qualités en français.

J'ai également traité la redirection de uptobox sans compte vers uptostream.

eco-plus commented 4 years ago

vous vous emellez les pinceaux !

la meilleur solution reste le code de @TmpName mais le probleme si j'ai bien compris le code c'est qu'il execute eval sur chaque objet (et pour chaque fonction ? , plusieurs fois ?) dans le code d'ou la lenteur. il faudrait test avec la lib js2py ou une autre pour voir si ça fait pareil.

sizanic commented 4 years ago

J'ai amélioré ton bricolage et je trouve le résultat très utilisable.

J'ai mis cette version dans la beta, c'est à l'utilisation que je vous demande de juger si on la garde (bricolage mais rapide et plusieurs qualités), ou si on reprend la version de @TmpName (propre mais très lent et un seul lien).

Il faudrait faire un choix car il serait bien de sortir une nouvelle version majeure pour régler le problème de la première installation.

TmpName commented 4 years ago

La version de @eco-plus sera toujours plus rapide, vu quelle recupere des info et execute un code python. Par contre si ils changent le code JS, la fonction ne marchera plus.

Ma version est un interpreteur JS, ca execute vraiment du code JS, c'est normal que ce soit lent, ca l'etait aussi pour openlod, ca marchera meme si le code JS change, mais c'est hyper long a executer, il n'y a aucun post traitement pour l'accellerer, ca lit le code caractere par caractere et l'execute commande apres commande, si vous voulez vous faire peur activez le logging (mais jamais dans Vstream)

Il vaut mieux prendre la version de @eco-plus, la mienne ne vaut le coup que si ils s'amusent a changer le code tout les 2 jours.

eco-plus commented 4 years ago

je suis tombé sur ça peut etre qu'en nice-ifiant le code ça irait plus vite.

edit: je l'ai dit pour mon code il y a des versions variantes rare qui demande des changement l'id n'est pas ou elle devrait etre.

sizanic commented 4 years ago

Oui, mais est-ce pour l'instant on ne pourrait pas se passer de ces quelques rares pour lesquels ça ne fonctionnent pas. Et tant mieux pour tous ceux pour lesquels ça fonctionnent.

On part avec cette version dans cette MAJ, et on l’améliorera dans la prochaine ?

eco-plus commented 4 years ago

le mieux ça serait d'avoir un site web gratuit qui execute le js a votre place, on enverrait le js en post et obtiendrait le résultat comme ce site il fonctionne pas avec le js d'up to mais c'est l'idée ,mais bon je n'y connais rien en site web si quelqu'un c'est faire... ou connais quelqu'un qui sait faire.

TmpName commented 4 years ago

Oui il ya des sites comme ca, comme heroku gratuit qui peuvent executer du JS, mais ca demande un enregistrement. A ce compte la j'installle JS2PY ou phantom sur la machine.

On a eu la meme conversation il ya 1/2 ans avec Openload ^^.

sizanic commented 4 years ago

OK. Mais le temps de mettre quelque chose en place, on garde quoi pour la prochaine MAJ ?

J'en ferai bien une avec les derniers hosters mis en place.

TmpName commented 4 years ago

Moi je mettrais le code de @eco-plus, 2/3 m de calcul c'est trop.

Faut voir dans le temps comment bouge leur code, et en fonction on optimisera son code ou le JSparser dans le pire des cas.

sizanic commented 4 years ago

Ok. Et dsl, j'insistais alors que j'avais pas vu ta réponse plus haut où tu préconisait déjà cette version.

Quelqu'un se lance bientôt dans la génération d'une mise à jour ?

sizanic commented 4 years ago

Nouvelle mise à jour 0.7.9 avec la version rapide de Uptostream, on verra si ça tient ...

Mariette-Popeye commented 3 years ago

Uptobox ne fonctionne plus sur vstream, j'ai pris 1 mois d'essai avec 1fichier et ça fonctionne

sizanic commented 3 years ago

@Mariette-Popeye Uptobox fonctionne très bien avec vstream. Il fallait venir nous demander ce qu'il faut faire ...

Mariette-Popeye commented 3 years ago

Bonjour,  voici pour info la réponse d'Uptobox: Bonjour, Kodi n'est pas autorisé sur Uptobox suite à de nombreux abus.

J'ai bien essayé de suivre vos astuces pour contourner le problème, ça m'a fait planter mon Minix z, j'ai du le réinstaller complètement. Mais maintenant si vous avez une astuce assez simple je suis preneur. Cordialement

sizanic commented 3 years ago

Pour que les liens uptobox démarrent à l'intérieur de vStream, il faut :

image

Est-ce bien les astuces déjà appliquées ?

Mariette-Popeye commented 3 years ago

Merci sizanic, j'ai appliqué le réglage sur vstream et ça refonctionne nickel. Merci la team.

sizanic commented 3 years ago

De rien. Tu peux également faire appel à la communauté d'utilisateurs sur ce Discord : https://discord.gg/KRsDT7PNHN

Mariette-Popeye commented 3 years ago

Bonsoir sizanic, J'ai appliqué les réglages et ça refonctionne. J'aurais vraiment du demander avant...Merci beaucoup