Creación de plugin para video44.net

Publicado por Samah, Junio 14, 2014, 10:08:04 AM

Tema anterior - Siguiente tema

Samah

Buenas a todo el foro, estoy intentando hacer un plugin que pille los videos de la página goodrama.net.
Es una página de series japonesas, subtituladas en inglés. Como estoy estudiando un poco el japonés (mi mujer es de allí y tengo que aprenderlo, aunque sea un poco), pues prácticamente todos los días veo algún video, y a modo de práctica quiero desarrollar un plugin para que me cachee los videos de un servidor, en concreto el video44.net.

Lá página enlaza a varios servidores, pero quiero empezar por este que es el que mejor me carga.

Aquí pongo el código:

#include <iostream>
#include <cstring>
#include <string>
#include <vector>
#include "../utils.cpp"

using namespace std;

// use this line to compile
// g++ -I. -fPIC -shared -g -o video44.net.so video44.net.cpp
// regex
// http.*\.video44\.net.*(\.jpg|\.png|\.mp4)

string get_filename(string url) {
             vector<string> resultado;
                       if (url.find("?") != string::npos) {
                               stringexplode(url, "&", &resultado);
                               stringexplode(resultado.at(resultado.size()-4), "=", &resultado);
                               return resultado.at(resultado.size()-1);          
                       } else {  
              //Ya se que esto es redundante y sobra, es para debug
stringexplode(url, "&", &resultado);  
                               stringexplode(resultado.at(resultado.size()-4), "=", &resultado);
                               return resultado.at(resultado.size()-1);
                       }
           }

extern "C" resposta getmatch(const string url) {
   resposta r;

       if ( (url.find(".video44.net/") != string::npos) and (url.find(".mp4") != string::npos))
{
           r.file = get_filename(url);
               if (!r.file.empty()) {
                       r.match = true;
                       r.domain = "video44";
               } else {
                       r.match = false;
               }
       } else {
               r.match = false;
       }
       return r;
}


Para depurar si la función  get_filename(url) me está devolviendo el valor correcto, estoy usando el Devcpp con un código  (ver archivo adjunto) que me imprime por pantalla el valor devuelto por la función, cosa que es muy útil para ir depurando si voy por el buen camino o no.

En este caso, cuando le paso la url a mano, mediante una variable, me devuelve correctamente el nombre del archivo mp4.

El caso es que cuando compilo el plugin y lo activo en el raptor, no me carga el vídeo. Si pongo la url directamente en el navegador, se me queda la pantalla en blanco, y si accedo a través de la página de gooddrama (http://www.gooddrama.net/japanese-drama/gunshi-kanbee-episode-14/3-2
), en el sitio donde debería aparecer el vídeo , me queda un hueco en blanco. Los demás servidores que el raptor no cachea, cargan sin problemas.

Yo creo que estoy a falta de algún detalle que o bien no lo veo o simplemente desconozco, ya que no soy muy experto en programación, es a base de prueba y error. Y el raptor es la primera vez que lo instalo para pruebas.

El raptor está cacheando correctamente, ya que por ejemplo, cualquier vídeo de xvideos, por poner un ejemplo de plugin cargado por defecto, funciona perfecto.

Agradecería de veras si alguien pudiera señalarme el error o al menos indicarme por donde puede venir el fallo y pueda conseguir arreglarlo.

Por supuesto postearé el plugin completo una vez que me funcione. Y la plantilla para testear que get_filename(url) devuelva lo correcto, queda aquí para disposición de todos los que la quieran usar.

Un saludo todo el foro y muchísimas gracias por leer este post.

Samah

firecold


firecold

Amigo revise la pagina que pusiste y ninguno de los videos sale de video44.net, sale de varios servidores pero no del que comentas, revisa y me avisas, Saludos

Samah

Hola, ante todo darte las gracias por responder tan rápido y por ayudarme. Te adjunto un trozo del código fuente de la página en cuestión:

<div id="streams">
      <div class="vmargin"><div><span class="playlist">Playlist 1</span><ul class="part_list"><li><a href="http://www.gooddrama.net/japanese-drama/gunshi-kanbee-episode-14/1-1">Part 1</a></li><li><a href="http://www.gooddrama.net/japanese-drama/gunshi-kanbee-episode-14/1-2">Part 2</a></li><li><a href="http://www.gooddrama.net/japanese-drama/gunshi-kanbee-episode-14/1-3">Part 3</a></li></ul></div><div><iframe src="http://videobug.net/embed.php?w=790&h=480&vid=vids3/gunshi_kanbee_-_14_clip1.mp4" style="width:790px;height:480px;border:0;margin:0;padding:0;"></iframe></div><div><a href="#" class="report_video" data-video-id="815611" title="Report Video">Video Broken?</a></div></div>
<div class="vmargin"><div><span class="playlist">Playlist 2</span><ul class="part_list"><li><a href="http://www.gooddrama.net/japanese-drama/gunshi-kanbee-episode-14/2-1">Part 1</a></li><li><a href="http://www.gooddrama.net/japanese-drama/gunshi-kanbee-episode-14/2-2">Part 2</a></li><li><a href="http://www.gooddrama.net/japanese-drama/gunshi-kanbee-episode-14/2-3">Part 3</a></li></ul></div><div><iframe src="http://byzoo.org/embed.php?w=790&h=480&vid=at/dr/gunshi_kanbee_-_14_clip1.mp4" style="width:790px;height:480px;border:0;margin:0;padding:0;"></iframe></div><div><a href="#" class="report_video" data-video-id="815617" title="Report Video">Video Broken?</a></div></div>
<div class="vmargin"><div><span class="playlist">Playlist 3</span><ul class="part_list"><li><a href="http://www.gooddrama.net/japanese-drama/gunshi-kanbee-episode-14/3-1">Part 1</a></li><li><a href="http://www.gooddrama.net/japanese-drama/gunshi-kanbee-episode-14/3-2" class="selected">Part 2</a></li><li><a href="http://www.gooddrama.net/japanese-drama/gunshi-kanbee-episode-14/3-3">Part 3</a></li></ul></div><div><iframe src="http://www.video44.net/gogo/?w=790&h=480&file=gunshi_kanbee_-_14_clip2.mp4&sv=1&site=dvideo&site=dvideo" scrolling="no" width="790" height="480" marginheight="0" marginwidth="0" frameborder="0"></iframe></div><div><a href="#" class="report_video" data-video-id="815625" title="Report Video">Video Broken?</a></div></div>
<div class="vmargin"><div><span class="playlist">Playlist 4</span><ul class="part_list"><li><a href="http://www.gooddrama.net/japanese-drama/gunshi-kanbee-episode-14/4-1">Part 1</a></li><li><a href="http://www.gooddrama.net/japanese-drama/gunshi-kanbee-episode-14/4-2">Part 2</a></li><li><a href="http://www.gooddrama.net/japanese-drama/gunshi-kanbee-episode-14/4-3">Part 3</a></li></ul></div><div><iframe style="overflow: hidden; border: 0; width: 790px; height: 430px" src="http://embed.novamov.com/embed.php?width=790&height=420&http://embed.novamov.com/embed.php?width=790&height=420&http://embed.novamov.com/embed.php?width=790&height=432&v=ba55eef68d77c" scrolling="no"></iframe></div><div><a href="#" class="report_video" data-video-id="815629" title="Report Video">Video Broken?</a></div></div>



Esta es la parte del código que contiene el enlace al vídeo, en un iframe : <iframe src="http://www.video44.net/gogo/?w=790&h=480&file=gunshi_kanbee_-_14_clip2.mp4&sv=1&site=dvideo&site=dvideo" scrolling="no" width="790" height="480" marginheight="0" marginwidth="0" frameborder="0"></iframe>

El caso es que aun pegando el enlace del vídeo en una pestaña nueva del navegador, tampoco lo cachea, se queda la pantalla en blanco.

Espero que puedas ver donde está el fallo, ya que tienes muchísima mas experiencia que yo y seguro que estoy pasando algún detalle por alto.

Gracias de verdad por tu tiempo y saludos.
Samah