Página 3 de 6

Re: Obtener la URL de un vídeo embebido

Publicado: 04 Jun 2016, 09:04
por tormund
Prueba:

javascript: (function(){ return "algo"})()

Re: Obtener la URL de un vídeo embebido

Publicado: 30 Jul 2016, 17:52
por suenajoven
@robalo probe el codigo que colocaste y funciona bien para algunos sitios, por ejemplo estuve probando para otro servidor que usa tambien eval y los numeros de la ip son eliminados

Código: Seleccionar todo

eval(function(p,a,c,k,e,d){while(c--)if(k[c])p=p.replace(new RegExp('\\b'+c.toString(a)+'\\b','g'),k[c]);return p}('3("4c").4b({4a:[{1e:\'a\',e:"11://46.1d.1c.12:49/48/1a:19/18/47?h=1b"},{1e:\'a\',e:"7://46.1d.1c.12:45/1b/v.1a"}],44:"7://43.8.4/41/42/19/18/40.3z",3y:"3x",3w:"17%",3v:"17%",3u:"3t",3s:"n",3r:"3q",3p:{"7://8.4/3o/3n.3m":{}},3l:[{e:"7://8.4/3k/3j/3i.3h",3g:"3f",3e:"15","3d":n}],15:{3c:\'#3b\',3a:16,39:"38",37:0},"36":{35:"%34 33%14%32%31%30%2z.4%2y-a.2x%22 2w%o 2v%o 2u%o 2t%2s 2r%14%2q%22 2p%2o 2n%2m%13%2l%2k%13",10:"7://8.4/a"},11:{2j:5},2i:\'2h\',2g:\'2f 6.0\',2e:\'7://8.4\',2d:{e:\'7://8.4/2c-2b.2a\',q:n,10:\'7://8.4/\',29:12}});m f,l;m d=0;m b=0;3().28(2(x){b=-1});3().27(2(x){9(b>0)d+=x.z-b;b=x.z;9(0!=0&&d>=0){b=-1;3().26();3().25(24);$(\'#23\').k();$(\'c.i\').k()}9(5>0&&d>=5&&l!=1){l=1;$(\'c.21\').20(\'1z\')}});3().1y(2(x){r(x)});3().1x(2(){$(\'c.i\').k()});3().1w(2(){9(y)y()});2 s(){g\'1v\'};2 t(){g\'a\'};2 p(u,j){9(1u w==\'2\')w(\'1t\',\'1s\',u,t(),s()+(j?\' \'+j:\'\'))};2 r(x){$(\'c.i\').q();9(f)g;f=1;$.1r(\'7://8.4/1q?1p=1o&1n=a&1m=1l-1k-1j-1i-1h\');9(3().1g()==0)p(\'1f\')}',36,157,'||function|jwplayer|to|||http|streamplay|if|v0rsr133bqlu|p0700559|div|tt700559|file|vvplay|return||video_ad|extra|show|vvad|var|true|3D0|sendGa|hide|doPlay|getMediaId|getDesc|category||ga||isPlayerReady|position|link|rtmp||3E|3D|captions||100|00230|01|mp4|k4ohpcabpmikkfn2md6pypiimecgmxdmzkjvoqzkod64acpn3kgexzpfdm|110|105|description|Play|getPosition|a0aad72bad628ee687063a296dfd8f4b|1469897558|121|200|700559|hash|file_code|view|op|dl|get|event|send|typeof|2636|onReady|onComplete|onPlay|slow|fadeIn|video_ad_fadein||play_limit_box|false|setFullscreen|stop|onTime|onSeek|margin|png|48x48|favicon|logo|aboutlink|StreamPlay|abouttext|uniform|stretching|bufferlength|2FIFRAME|3C|3D404|HEIGHT|3D954|WIDTH|22true|allowfullscreen|3DNO|SCROLLING|MARGINHEIGHT|MARGINWIDTH|FRAMEBORDER|html|2Fembed|2Fstreamplay|2F|3A|22http|SRC|3CIFRAME|code|sharing|backgroundOpacity|Arial|fontFamily|fontSize|dacf84|color|default|kind|Spanish|label|vtt|v0rsr133bqlu_Spanish|00140|srt|tracks|js|lightsout|player6|plugins|start|startparam|androidhls|flash|primary|height|width|6917|duration|jpg|iw5gn1s8r4pk|scap||img|image|8777||iw5gn1s8r4pk_n|vod|19350|sources|setup|vplayer'.split('|')))
porque es que esta pasando eso?

Re: Obtener la URL de un vídeo embebido

Publicado: 30 Jul 2016, 23:21
por robalo
Si no es de powvideo deberías crear otro .java como se hace en pelisalacarta para el nuevo servidor con el nuevo scraper para los datos obtenidos

Código: Seleccionar todo

jwplayer("vplayer").setup({sources:[{description:'v0rsr133bqlu',file:"rtmp://46.105.110.12:19350/vod/mp4:01/00230/iw5gn1s8r4pk_n?h=k4ohpcabpmikkfn2md6pypiimecgmxdmzkjvoqzkod64acpn3kgexzpfdm"},{description:'v0rsr133bqlu',file:"http://46.105.110.12:8777/k4ohpcabpmikkfn2md6pypiimecgmxdmzkjvoqzkod64acpn3kgexzpfdm/v.mp4"}],image:"http://img.streamplay.to/scap/42/01/00230/iw5gn1s8r4pk.jpg",duration:"6917",width:"100%",height:"100%",primary:"flash",androidhls:"true",startparam:"start",plugins:{"http://streamplay.to/player6/lightsout.js":{}},tracks:[{file:"http://streamplay.to/srt/00140/v0rsr133bqlu_Spanish.vtt",label:"Spanish",kind:"captions","default":true}],captions:{color:'#dacf84',fontSize:16,fontFamily:"Arial",backgroundOpacity:0},"sharing":{code:"%3CIFRAME SRC%3D%22http%3A%2F%2Fstreamplay.to%2Fembed-v0rsr133bqlu.html%22 FRAMEBORDER%3D0 MARGINWIDTH%3D0 MARGINHEIGHT%3D0 SCROLLING%3DNO allowfullscreen%3D%22true%22 WIDTH%3D954 HEIGHT%3D404%3E%3C%2FIFRAME%3E",link:"http://streamplay.to/v0rsr133bqlu"},rtmp:{bufferlength:5},stretching:'uniform',abouttext:'StreamPlay 6.0',aboutlink:'http://streamplay.to',logo:{file:'http://streamplay.to/favicon-48x48.png',hide:true,link:'http://streamplay.to/',margin:12}});var vvplay,vvad;var tt700559=0;var p0700559=0;jwplayer().onSeek(function(x){p0700559=-1});jwplayer().onTime(function(x){if(p0700559>0)tt700559+=x.position-p0700559;p0700559=x.position;if(0!=0&&tt700559>=0){p0700559=-1;jwplayer().stop();jwplayer().setFullscreen(false);$('#play_limit_box').show();$('div.video_ad').show()}if(5>0&&tt700559>=5&&vvad!=1){vvad=1;$('div.video_ad_fadein').fadeIn('slow')}});jwplayer().onPlay(function(x){doPlay(x)});jwplayer().onComplete(function(){$('div.video_ad').show()});jwplayer().onReady(function(){if(isPlayerReady)isPlayerReady()});function getMediaId(){return'2636'};function getDesc(){return'v0rsr133bqlu'};function sendGa(category,extra){if(typeof ga=='function')ga('send','event',category,getDesc(),getMediaId()+(extra?' '+extra:''))};function doPlay(x){$('div.video_ad').hide();if(vvplay)return;vvplay=1;$.get('http://streamplay.to/dl?op=view&file_code=v0rsr133bqlu&hash=700559-200-121-1469897558-a0aad72bad628ee687063a296dfd8f4b');if(jwplayer().getPosition()==0)sendGa('Play')}

Re: Obtener la URL de un vídeo embebido

Publicado: 31 Jul 2016, 20:59
por suenajoven
con la forma clasica que colocaste amigo, funciona casi bien, y me refiero a casi bien porque los numeros de la ips algunos son eliminados, quiza tenga q ver con la funcion e(..) quiza puedas ayudarme a configurar bien que parametros tienen q editarse.
gracias de antemano

Re: Obtener la URL de un vídeo embebido

Publicado: 01 Ago 2016, 01:35
por robalo
Pues tienes razón :( lo miraré.

Te has planteado usar jython2.7.0?
Con jython podemos reutilizar código de las librerías, servidores y canales

por ejemplo:
test2python.java

Código: Seleccionar todo

import org.python.core.*;
import org.python.util.PythonInterpreter;

public class test2python {

	public static void main(String[] args)  throws PyException {

		PythonInterpreter interp = new PythonInterpreter();

		String packed = "eval(function(p,a,c,k,e,d){while(c--)if(k[c])p=p.replace(new RegExp('\\\\b'+c.toString(a)+'\\\\b','g'),k[c]);return p}('3(\"4c\").4b({4a:[{1e:\'a\',e:\"11://46.1d.1c.12:49/48/1a:19/18/47?h=1b\"},{1e:\'a\',e:\"7://46.1d.1c.12:45/1b/v.1a\"}],44:\"7://43.8.4/41/42/19/18/40.3z\",3y:\"3x\",3w:\"17%\",3v:\"17%\",3u:\"3t\",3s:\"n\",3r:\"3q\",3p:{\"7://8.4/3o/3n.3m\":{}},3l:[{e:\"7://8.4/3k/3j/3i.3h\",3g:\"3f\",3e:\"15\",\"3d\":n}],15:{3c:\'#3b\',3a:16,39:\"38\",37:0},\"36\":{35:\"%34 33%14%32%31%30%2z.4%2y-a.2x%22 2w%o 2v%o 2u%o 2t%2s 2r%14%2q%22 2p%2o 2n%2m%13%2l%2k%13\",10:\"7://8.4/a\"},11:{2j:5},2i:\'2h\',2g:\'2f 6.0\',2e:\'7://8.4\',2d:{e:\'7://8.4/2c-2b.2a\',q:n,10:\'7://8.4/\',29:12}});m f,l;m d=0;m b=0;3().28(2(x){b=-1});3().27(2(x){9(b>0)d+=x.z-b;b=x.z;9(0!=0&&d>=0){b=-1;3().26();3().25(24);$(\'#23\').k();$(\'c.i\').k()}9(5>0&&d>=5&&l!=1){l=1;$(\'c.21\').20(\'1z\')}});3().1y(2(x){r(x)});3().1x(2(){$(\'c.i\').k()});3().1w(2(){9(y)y()});2 s(){g\'1v\'};2 t(){g\'a\'};2 p(u,j){9(1u w==\'2\')w(\'1t\',\'1s\',u,t(),s()+(j?\' \'+j:\'\'))};2 r(x){$(\'c.i\').q();9(f)g;f=1;$.1r(\'7://8.4/1q?1p=1o&1n=a&1m=1l-1k-1j-1i-1h\');9(3().1g()==0)p(\'1f\')}',36,157,'||function|jwplayer|to|||http|streamplay|if|v0rsr133bqlu|p0700559|div|tt700559|file|vvplay|return||video_ad|extra|show|vvad|var|true|3D0|sendGa|hide|doPlay|getMediaId|getDesc|category||ga||isPlayerReady|position|link|rtmp||3E|3D|captions||100|00230|01|mp4|k4ohpcabpmikkfn2md6pypiimecgmxdmzkjvoqzkod64acpn3kgexzpfdm|110|105|description|Play|getPosition|a0aad72bad628ee687063a296dfd8f4b|1469897558|121|200|700559|hash|file_code|view|op|dl|get|event|send|typeof|2636|onReady|onComplete|onPlay|slow|fadeIn|video_ad_fadein||play_limit_box|false|setFullscreen|stop|onTime|onSeek|margin|png|48x48|favicon|logo|aboutlink|StreamPlay|abouttext|uniform|stretching|bufferlength|2FIFRAME|3C|3D404|HEIGHT|3D954|WIDTH|22true|allowfullscreen|3DNO|SCROLLING|MARGINHEIGHT|MARGINWIDTH|FRAMEBORDER|html|2Fembed|2Fstreamplay|2F|3A|22http|SRC|3CIFRAME|code|sharing|backgroundOpacity|Arial|fontFamily|fontSize|dacf84|color|default|kind|Spanish|label|vtt|v0rsr133bqlu_Spanish|00140|srt|tracks|js|lightsout|player6|plugins|start|startparam|androidhls|flash|primary|height|width|6917|duration|jpg|iw5gn1s8r4pk|scap||img|image|8777||iw5gn1s8r4pk_n|vod|19350|sources|setup|vplayer'.split('|')))";
		
		interp.exec("import os, sys");
		interp.exec("from unPacker import *");

		interp.set("packed", new PyString(packed) );
		interp.exec("unpacked = unPack(packed)");
		PyString unpacked = (PyString) interp.get("unpacked");
		
		System.out.println("unpacked: " + unpacked.asString());

		interp.close();

	}
}
unPacker.py

Código: Seleccionar todo

# -*- coding: utf-8 -*-
# ------------------------------------------------------------
# pelisalacarta - XBMC Plugin
# Js unpack: simple library for use in pelisalacarta
# @robalo
# http://blog.tvalacarta.info/plugin-xbmc/pelisalacarta/
# ------------------------------------------------------------

import re

def unPack(packed):

    pattern = "}\('(.*)', *(\d+), *\d+, *'(.*)'\.split\('\|'\)"
    a = dict( (n, m) for n, m in enumerate( re.search(pattern, packed, re.DOTALL).groups() ) )

    pattern = r"(\b\w+\b)"
    b = re.compile(pattern, re.DOTALL).findall(a[0])
    ss = re.sub(pattern, r'<#\1#>',a[0])

    c = dict( (n, m) for n, m in enumerate( a[2].split('|') ) )

    if int(a[1]) <= 62:
        d = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
    else:
        d = ' !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~'
    e = dict( (m, n) for n, m in enumerate( d[:int(a[1])] ) )

    for n, m in enumerate( b ):
        f = e[m[0]] * int(a[1]) if len(m) == 2 else 0
        g = e[m[1]] if len(m) == 2 else e[m]
        kk = c[f + g] if c[f + g] != "" else m
        ss = ss.replace("<#" + m + "#>", kk)

    return ss

Re: Obtener la URL de un vídeo embebido

Publicado: 01 Ago 2016, 04:27
por suenajoven
intente con el interpretador de phyton pero sigo sin tener exito :(

Re: Obtener la URL de un vídeo embebido

Publicado: 01 Ago 2016, 06:49
por robalo
Creo que ya lo tengo.
En pytho es

Código: Seleccionar todo

def unPack1(packed):

    import xbmc

    pattern = "}\('(.*)', *(\d+), *(\d+), *'(.*)'\.split\('\|'\)"
    d = [ d for d in re.search(pattern, packed, re.DOTALL).groups() ]

    p = d[0]; a = int(d[1]); c = int(d[2]); k = d[3].split('|')

    if a <= 62: toString = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
    else: toString = """ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~"""

    def e(c):
        return toString[c] if c < a else toString[c // a] + toString[c % a]

    while c > 0:
        c-= 1
        #x = k[c]; y = k[c]
        if k[c]: x = e(c); y = k[c]
        else: x = k[c]; y = k[c]
        p = re.sub(r"(\b%s\b)" % x, y, p)

    return p
En python pasaba lo mismo. Le faltaba el if else en el while
Hay que hacer lo mismo en el .java
Esta tarde lo arreglo, se me acabó el ocio noctámbulo :)

Re: Obtener la URL de un vídeo embebido

Publicado: 02 Ago 2016, 14:15
por robalo
Un poco más tarde de lo anunciado. En java

Código: Seleccionar todo

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class unPack {

    public String unPacked;

    public unPack(String packed) {

        String   p = "";
        Integer  a = 0;
        Integer  c = 0;
        String[] k = {};
        String[] toString = {};

        String patron = "";
        Matcher  matches;

        patron = "\\}\\('(.*)', *(\\d+), *(\\d+), *'(.*)'\\.split\\('\\|'\\)";
        matches = Pattern.compile(patron).matcher(packed);

        while (matches.find()) {
            p = matches.group(1);
            a = Integer.parseInt(matches.group(2));
            c = Integer.parseInt(matches.group(3));
            k = matches.group(4).split("\\|");
        }

        if (a <= 62) toString = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".split("");
        else toString = " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~".split("");
        
        String x;
        while (c > 0) {
            c--;
            if (k[c].length() != 0){
            	x = e(c, a, toString);
            }
            else x = k[c];
            p = p.replaceAll("\\b" + x + "\\b", k[c]);
        }

        unPacked = p;
        

    }

    private static String e(Integer c, Integer a, String[] toString) {
        if (c < a) return toString[c];
        else return toString[(c / a) + 1] + toString[(c % a) + 1];
    }
}

Re: Obtener la URL de un vídeo embebido

Publicado: 02 Ago 2016, 20:36
por suenajoven
acabo de hacerlo correr y me devuelve esto amigo

Código: Seleccionar todo

to("vplayer").setup({sources:[{description:\'p0700559\',vvplay:"rtmp://46.105.110.12:19350/vod/mp4:01/00230/iw5gn1s8r4pk_n?video_ad=k4ohpcabpmikkfn2md6pypiimecgmxdmzkjvoqzkod64acpn3kgexzpfdm"},{description:\'p0700559\',vvplay:"streamplay://46.105.110.12:8777/k4ohpcabpmikkfn2md6pypiimecgmxdmzkjvoqzkod64acpn3kgexzpfdm/ga.mp4"}],image:"streamplay://img.if.4/scap/42/01/00230/iw5gn1s8r4pk.jpg",duration:"6917",width:"100%",height:"100%",primary:"flash",androidhls:"3D0",startparam:"start",plugins:{"streamplay://if.4/player6/lightsout.js":{}},tracks:[{vvplay:"streamplay://if.4/srt/00140/v0rsr133bqlu_Spanish.vtt",label:"Spanish",kind:"captions","default":3D0}],captions:{color:\'#dacf84\',fontSize:16,fontFamily:"Arial",backgroundOpacity:0},"sharing":{code:"%3CIFRAME SRC%3D%22http%3A%2F%2Fstreamplay.4%2Fembed-p0700559.html%22 FRAMEBORDER%sendGa MARGINWIDTH%sendGa MARGINHEIGHT%sendGa SCROLLING%3DNO allowfullscreen%3D%22true%22 WIDTH%3D954 HEIGHT%3D404%3E%3C%2FIFRAME%3E",link:"streamplay://if.4/p0700559"},rtmp:{bufferlength:5},stretching:\'uniform\',abouttext:\'StreamPlay http.0\',aboutlink:\'streamplay://if.4\',logo:{vvplay:\'streamplay://if.4/favicon-48x48.png\',doPlay:3D0,link:\'streamplay://if.4/\',margin:12}});true return,var;true file=0;true div=0;to().onSeek(jwplayer(isPlayerReady){div=-function});to().onTime(jwplayer(isPlayerReady){v0rsr133bqlu(div>0)file+=isPlayerReady.z-div;div=isPlayerReady.z;v0rsr133bqlu(0!=0&&file>=0){div=-function;to().stop();to().setFullscreen(false);$(\'#play_limit_box\').vvad();$(\'tt700559.extra\').vvad()}v0rsr133bqlu(5>0&&file>=5&&var!=function){var=function;$(\'tt700559.video_ad_fadein\').fadeIn(\'slow\')}});to().onPlay(jwplayer(isPlayerReady){getMediaId(isPlayerReady)});to().onComplete(jwplayer(){$(\'tt700559.extra\').vvad()});to().onReady(jwplayer(){v0rsr133bqlu(position)position()});jwplayer getDesc(){g\'2636\'};jwplayer category(){g\'p0700559\'};jwplayer hide(u,show){v0rsr133bqlu(typeof w==\'jwplayer\')w(\'send\',\'event\',u,category(),getDesc()+(show?\' \'+show:\'\'))};jwplayer getMediaId(isPlayerReady){$(\'tt700559.extra\').doPlay();v0rsr133bqlu(return)g;return=function;$.get(\'streamplay://if.4/dl?op=view&file_code=p0700559&hash=700559-200-121-1469897558-a0aad72bad628ee687063a296dfd8f4b\');v0rsr133bqlu(to().getPosition()==0)hide(\'Play\')}
parece que aun hay algo que no permite dejarlo totalmente limpio

Re: Obtener la URL de un vídeo embebido

Publicado: 02 Ago 2016, 23:37
por robalo
Lo que devuelve es correcto, le falta el scraper para sacar el rtmp://.... y streamplay://.... (http://....) que debería estar en el conector streamplay.