• Publicidad

Cómo descargar este enlace

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Cómo descargar este enlace

Notapor BigBear » 2013-10-14 18:13 @800

Quiero bajar el enlace de un torrent como este:

magnet:?xt=urn:btih:81f7aff44e1e232442c175c8e0aa9fa01916c77e&dn=The+Best+Of+Blur+%28sidthefish%29&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Ftracker.publicbt.com%3A80&tr=udp%3A%2F%2Ftracker.istole.it%3A6969&tr=udp%3A%2F%2Ftracker.ccc.de%3A80&tr=udp%3A%2F%2Fopen.demonii.com%3A1337

pero no tengo idea de cómo usar el módulo LWP::Useragent para hacer esto.

¿ Cómo tendría que hacerlo ?
BigBear
Perlero frecuente
Perlero frecuente
 
Mensajes: 981
Registrado: 2009-03-01 18:39 @818

Publicidad

Re: Como descargar este link

Notapor explorer » 2013-10-14 20:10 @881

¿No vale con un simple get() del módulo LWP::Simple?
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Cómo descargar este enlace

Notapor BigBear » 2013-10-15 12:58 @582

¿ Así ?

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1.  use LWP::Simple;
  2.  $content = get("magnet:?xt=urn:btih:81f7aff44e1e232442c175c8e0aa9fa01916c77e&dn=The+Best+Of+Blur+%28sidthefish%29&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Ftracker.publicbt.com%3A80&tr=udp%3A%2F%2Ftracker.istole.it%3A6969&tr=udp%3A%2F%2Ftracker.ccc.de%3A80&tr=udp%3A%2F%2Fopen.demonii.com%3A1337");
  3.  die "Couldn't get it!" unless defined $content;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Devuelve :

Couldn't get it! at C:\Documents and Settings\Doddy\Escritorio\test\test.pl line 3.

También intenté con este código y tampoco funciona:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. use LWP::UserAgent;
  2. my $nave = LWP::UserAgent->new;
  3. $nave->agent(
  4. "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"
  5. );
  6. $nave->timeout(5);
  7.  
  8. download("magnet:?xt=urn:btih:81f7aff44e1e232442c175c8e0aa9fa01916c77e&dn=The+Best+Of+Blur+%28sidthefish%29&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Ftracker.publicbt.com%3A80&tr=udp%3A%2F%2Ftracker.istole.it%3A6969&tr=udp%3A%2F%2Ftracker.ccc.de%3A80&tr=udp%3A%2F%2Fopen.demonii.com%3A1337","test.torrent");
  9.  
  10. sub download {
  11.     if ( $nave->mirror( $_[0], $_[1] ) ) {
  12.         if ( -f $_[1] ) {
  13.             return true;
  14.         }
  15.     }
  16. }
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
BigBear
Perlero frecuente
Perlero frecuente
 
Mensajes: 981
Registrado: 2009-03-01 18:39 @818

Re: Cómo descargar este enlace

Notapor explorer » 2013-10-15 16:00 @708

Pues entonces no estamos hablando de bajar un archivo torrent usando HTTP. El esquema 'magnet' será distinto.

Te recomiendo que no uses comillas dobles... usa comillas simples... por si algún carácter '%' o '@' afecta al resultado.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Cómo descargar este enlace

Notapor BigBear » 2013-11-29 15:31 @688

Hola, explorer, tengo otra duda: tengo el siguiente código y me debería funcionar en Windows usando una consola con solo cargar esto para que cargue torrent que lo detecta al toque.

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. my $code = 'magnet:?xt=urn:btih:0d01650ba70679ccc4815d4b2b39f314f6bf32ea&dn=Batman+and+Robin
  2. +v2+25+%282014%29%282+cvrs%29%281440%2B2048px-HD%29%28BrightEyes&tr=udp%3A%2F%2F
  3. tracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Ftracker.publicbt.com%3A80&tr=udp%
  4. 3A%2F%2Ftracker.istole.it%3A6969&tr=udp%3A%2F%2Ftracker.ccc.de%3A80&tr=udp%3A%2F
  5. %2Fopen.demonii.com%3A1337';
  6.  
  7. system($code);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


Y me devuelve esto.

Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
"magnet:?xt" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
"dn" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


Cuando lo hago desde la consola no hay problema pero el código no funciona.

¿ Qué estoy haciendo mal ?
BigBear
Perlero frecuente
Perlero frecuente
 
Mensajes: 981
Registrado: 2009-03-01 18:39 @818

Re: Cómo descargar este enlace

Notapor explorer » 2013-11-29 16:06 @712

Primero: el poner la URL en varias líneas te va a dar muchos problemas. Mejor dicho: no funcionará nada. Debes poner la URL en una sola línea.

Segundo: "eso" es una URL, no un comando. Al system() le pasas dos argumentos: el programa que "puede" entender o "reproducir" un enlace magnet, y el segundo argumento, el URL.

Por ejemplo:

system("C:/Program Files (x86)/Transmission Remote GUI/transgui.exe", $code);

Si estás en Windows, es posible que tenga definido el programa que tiene que abrir cuando el usuario solicita abrir un URL magnet. Creo que entonces debes ejecutar el comando START, pero eso ya no lo sé (no soy usuario de Windows, afortunadamente).
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Cómo descargar este enlace

Notapor BigBear » 2013-11-29 16:50 @743

Ya sabía que no era una URL pero para no crear un tema nuevo me pareció más indicado preguntar acá.

De nuevo, gracias por la ayuda, explorer, con solo usar esto sí anda.
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. system("C:/Archivos de programa/uTorrent/uTorrent.exe", $code);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
BigBear
Perlero frecuente
Perlero frecuente
 
Mensajes: 981
Registrado: 2009-03-01 18:39 @818


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 45 invitados

cron