Foros del Web » Programando para Internet » Javascript »

Problema con obtener código fuente

Estas en el tema de Problema con obtener código fuente en el foro de Javascript en Foros del Web. Código PHP: <?php $url  =  $_POST [ 'url' ]; $file  =  file_get_contents  (  $url  ,  "r" ); if (! $file ) {     echo  "<p>VIDEO ERROR.\n" ;     exit;   }      ...
  #1 (permalink)  
Antiguo 17/07/2009, 07:47
 
Fecha de Ingreso: julio-2008
Ubicación: /public_html/elrodri
Mensajes: 32
Antigüedad: 15 años, 9 meses
Puntos: 0
Pregunta Problema con obtener código fuente

Código PHP:
<?php
$url 
$_POST['url'];
$file file_get_contents $url "r");
if (!
$file) {
    echo 
"<p>VIDEO ERROR.\n";
    exit;   }
    
if (
eregi ("<title>(.*)</title>"$file$title)) {}

if (
eregi ("&sk=(.*)&"$file$ash)) {}

?>
la variable $ash obtengo un código parar poder descargar el vídeo de youtube pero claro solo me funciona ami ya que el codigo fuente lo obtinen e mi IP si alguien se conecta desde mi no puede bajarse el video ya que esa ash se genera para cada IP.

Aquí la pregunta alquilen puede enviarme su view-source:Video_YouTuve_xxx mediante post o alguna otra manera para que un php busque la variable, para así obtener su $ash ???

Por que sino el link de la descarga da error y no descarga.
  #2 (permalink)  
Antiguo 17/07/2009, 09:06
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Problema con obtener código fuente

Es mejor si te registras directo con Youtube, ellos te dan acceso a su API y con eso puedes obtener varias herramientas para descargar el video de forma más sencilla.

Saludos.
  #3 (permalink)  
Antiguo 18/07/2009, 17:53
 
Fecha de Ingreso: julio-2008
Ubicación: /public_html/elrodri
Mensajes: 32
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Problema con obtener código fuente

He estado mirando el API pero no pone nada de descargar sus vídeos y menos en formato .mp4

Tengo echo algo provisional ya que no se como obtener el código fuente del que visita y que el me lo envié mediante post para que sea analizado y así sacar la dirección de la descarga del vídeo en formato .mp4

Podéis ver lo que tengo echo psptube.cclh.es
La descarga funciona por ahora pero de una manera muy rudimentaria

Mi duda es no puede hacer el visitante un view-source: del código fuente y enviármelo mediante post sin que tenga que copiar y pegarlo ??
  #4 (permalink)  
Antiguo 18/07/2009, 18:00
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 16 años, 7 meses
Puntos: 188
Respuesta: Problema con obtener código fuente

vaya que ese phpscript me ha gustado, me has dado una idea.

Con respecto a tu pregunta se me ocurre algo.

Ya que no puedes enviar por POST de esa manera, me surgio esta idea.

Que sucede si en lugar de mostrar el view_source en un textarea lo subes a un campo de texto en una base de datos y despues en la misma pagina consultas la DB por -id, para que te muestre el valor añadido mas recientemente ( y luego ya lo procesas con el boton descargar)

Esto funcionari perfecto siempre y cuando 2 usuarios no quieran descagar el video almismo tiempo, porque si es asi entonces empienzan los problemas XD


Entendis la idea o te la ilustro con codigo ?? Saludos amigo.
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #5 (permalink)  
Antiguo 18/07/2009, 18:10
 
Fecha de Ingreso: julio-2008
Ubicación: /public_html/elrodri
Mensajes: 32
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Problema con obtener código fuente

Bueno no entiendo muy bien lo que quieres hacer

Bueno lo que tengo puesto es:

Un iframe donde carga el view-source: en el ordenador del que quiere descargarlo, ya que para poder descargarlo se necesita un ash que youtube lo genera para tu ip y si haces fopen el ash generado es con la ip del servidor y no funciona con tu usuario.

Y el código que el obtiene me lo pega en el área de texto.
Yo busco alguna manera de que el usuario en cuestión se ahorre ese copiar y pegar.

Ya que llevo buscando por google mil maneras de copiar contenido del iframe o otras menaras y nada.
  #6 (permalink)  
Antiguo 18/07/2009, 18:18
 
Fecha de Ingreso: julio-2005
Mensajes: 86
Antigüedad: 18 años, 9 meses
Puntos: 3
Respuesta: Problema con obtener código fuente

Me equivoqué, ya vi tu error: consigues el código fuente por iframe. Mira, si tu servidor soporta sockets, puedes hacer esto:
Código PHP:
Ver original
  1. <?
  2. $direccion =  gethostbyname('www.youtube.es');
  3. $sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
  4. $resultado = socket_connect($sock, $dir, '80');
  5. $entrada = "GET /".$url." HTTP/1.1\r\n";
  6. socket_write($socket, $entrada, strlen($entrada));
  7. $cod = socket_read($socket)
  8.  
  9. ?>

La variable $url es el video, sólo el final: "watch?v=_5M4hzW5MZA". y así puedes conseguir con la variable $cod todo el codigo. Si te muestra algún error, lo solucionamos facilmente. Un saludo.

Última edición por hebo; 18/07/2009 a las 18:30
  #7 (permalink)  
Antiguo 18/07/2009, 18:24
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 16 años, 7 meses
Puntos: 188
Respuesta: Problema con obtener código fuente

a Perfecto, mira eso solo es cuestion de modificar un poco tu codigo.

Que pasa si en lugar de colocarl el view-source que optiones en un text-area lo colocas en un campo de formulario oculto y lo procesas de una sola vez con el boton "descargar"

Puedes hacer eso, modificando unpoco tu script.

¿Podiras pegar un trozo del PHP que utlizas para colocar el view-source en el textarea y otro trozo del php que usas para descargar, probablemente podamos ayudarte.

Es ovio que debe existir una forma de supmirte esto, ya que es muy inserible q coloques el source code en un textaren en lugar de procesarlo de una sola ves.


Saludos!
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #8 (permalink)  
Antiguo 18/07/2009, 18:25
 
Fecha de Ingreso: julio-2008
Ubicación: /public_html/elrodri
Mensajes: 32
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Problema con obtener código fuente

Eso lo hice al principio

Código PHP:
$file file_get_contents $url "r"); 
Pero la pagina del vídeo es abierta en el servidor y youtube te da un ash erróneo que solo funcionaria si lo descargas desde el servidor donde hospedas la web.

Fue un chasco cuándo tenia la web ya echa en mi ordenador local y se la pasos a unos amigos para que la pruebas y me dicen no descarga

No se si se me entiendo lo que quiero hacer?
  #9 (permalink)  
Antiguo 18/07/2009, 18:31
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 16 años, 7 meses
Puntos: 188
Respuesta: Problema con obtener código fuente

Cita:
Iniciado por hebo Ver Mensaje
Esa idea es bastante basta. Te cargas un servidor si recibes muchas visitas: piensa que una base de datos tiene un espacio limitado, y que con eso cargas mucho el servidor. Además, es un lío de conexiones: que si ahora con youtube, que si ahora con la base de datos dos veces (enviar y recibir) y luego otra vez a youtube para enviar al cliente la descarga... No es factible...
Si Hebo, pero el problema que el supone es el del ash.

Ademas no nos olvidemos que podemos eliminar el valor introducido en la database enseguida desspues de consultarlo.

________

Amigo ElRodri ya no te entendi ... ....

Tu has fabricado aquel script, yo ya venia prefabricado.... ??
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #10 (permalink)  
Antiguo 18/07/2009, 18:41
 
Fecha de Ingreso: julio-2008
Ubicación: /public_html/elrodri
Mensajes: 32
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Problema con obtener código fuente

Este es la url de youtube que te permite descargar el vídeo.

ht*p://w*w.youtube.com/get_video?video_id=[ID_VIDEO]&t=[ash]&fmt=18">

La programación que tengo ahora la he echo yo toda, no soy un as del php pero puedo tirar con google y la web de php.net

El "ash" YouTube lo genera para tu IP, si el servidor hace un fopen u otra tipo de apertura en el server crea un ash falso para la IP del servidor.

Por eso creo que no existe nignua web que te permita lo que yo quiero hacer, por que a lo mejor es imposible hacerlo más sencillo.

------------------------

Lo de la base de datos lo había pensado para asi almacenar los "ash" y no recurrir a youtube, pero cuando me di cuenta que para cada uno son diferentes pase de usar sql
  #11 (permalink)  
Antiguo 18/07/2009, 18:42
 
Fecha de Ingreso: julio-2005
Mensajes: 86
Antigüedad: 18 años, 9 meses
Puntos: 3
Respuesta: Problema con obtener código fuente

A mi me da que esto es mas de javascript, porque has de conseguir por parte del cliente el ash ese, que aún no sé muy bien que es, y eso lo tiene el cliente. Bueno, diré solamente que para conseguir eso, en php no creo que se pueda, ya que el php es por parte del servidor, y conseguir el ash, si es parte del cliente, es bastante dificil.

Para hacerlo por parte del servidor es algo más complicado: primero tendrias que subirlo al servidor, y dárselo al usuario, y eso consumiria mucho ancho de banda, así que es un poco caro hacer eso, pero bueno, por intentar. Sería hacer un fopen como hacías tu y que el servidor luego recogiera el archivo y lo subiera al servidor. No sé muy bien como hacerlo, pregunta esto en concreto, es decir, como a partir de una url, conseguir guardar un archivo en el servidor.
  #12 (permalink)  
Antiguo 18/07/2009, 18:45
 
Fecha de Ingreso: julio-2008
Ubicación: /public_html/elrodri
Mensajes: 32
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Problema con obtener código fuente

Entonces tendré que preguntarlo en la sección de script no?


Estuve buscando también con script el problema es que yo de script se 0 xD

Encontré algo sobre "innerhtml" pero no se como utilizarlo

Edito:
Si quieren mover este post a la sección de Script mejor, así no creo doble post del mismo tema

Lo que había pensado en script era un iframe oculto con el view-source: y que un script copie todo el código en un campo de texto oculto y ale post y listo. Pero claro sin saber script poco voy hacer jaja

Última edición por ElRodri; 18/07/2009 a las 18:55
  #13 (permalink)  
Antiguo 19/07/2009, 12:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Problema con obtener código fuente

Tema trasladado desde PHP
  #14 (permalink)  
Antiguo 23/07/2009, 10:00
 
Fecha de Ingreso: julio-2008
Ubicación: /public_html/elrodri
Mensajes: 32
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Problema con obtener código fuente

Gracias GatorV

Bueno tengo que decir que yo de script no se nada

Pero a alguien se le ocurre alguna manera de de hacer eso mediante un script ??
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:12.