[Rio-pm] Problemas com download

Eduardo Maia maia em eduardomaia.com
Segunda Outubro 29 09:52:01 PDT 2012


É verdade, o open que você faz no código é de um arquivo de entrada, eu
viajei.

Cara, parece que o módulo está zoado no Windows. Você consegue fazer um
get_video_url? Se conseguir, talvez seria uma solução usar LWP para baixar
o vídeo...


2012/10/29 Aureliano Guedes <guedes_1000 em hotmail.com>

>  Eduardo, obrigado pela resposta.
>
> O modulo que faz o download(WWW::YouTube::Download) ja instrue que o
> arquivo é binario, esse modulo exclue a necessidade que fazer um 'open OUT,
> ...;' pois ele ja contem esse comando, inclusive passando em modo binario:
>
>  99    open my $wfh, '>', $file or Carp::croak $file, " $!";
> 100    binmode $wfh;
>
> ------------------------------
> Date: Sun, 28 Oct 2012 23:38:55 -0300
> From: maia em eduardomaia.com
> To: rio-pm em pm.org
> Subject: Re: [Rio-pm] Problemas com download
>
>
> Olá, Aureliano, tudo bom?
>
> Não costumo ter tempo de ver emails do grupo, nem de participar dos
> encontros. Lamentável.
>
> Mas a ausência de respostas dessa thread, aliado a um eventual whisky
> descompromissado na frente do PC, fez eu estar aqui respondendo :)
>
> Desconheço os módulos que você está usando, nunca precisei deles. Mas dei
> uma olhada no seu código, e duas coisas chamaram minha atenção:
>
> 1. Você disse ter problemas para salvar um arquivo binário em ambiente
> Windows.
>
> 2. Você passou o seguinte código:
> open IN, $ARGV[0] or die $!;
> save_vd (vdid($_)) foreach (<IN>);
>
> Sendo que essa save_vd não tem uma instrução binmode. Tá com cara que você
> precisa dar um binmode. Vou explicar...
>
> Quando precisamos salvar em disco um arquivo binário dentro de um "not
> Windows", a gente escreve o arquivo e pronto. Dentro de um Windows, não
> basta escrever o arquivo, tem que colocar uma instrução (após o open)
> dizendo que o arquivo é binário. Tipo isso:
> open (OUT, ">video.flv");
> *binmode(OUT);*
> print OUT $bytes;
> close(OUT);
>
> Já segue o link para o Perldoc :)
> http://perldoc.perl.ou <http://perldoc.perl.org/functions/binmode.html>
> rg/f <http://perldoc.perl.org/functions/binmode.html>nctions/binmode.html<http://perldoc.perl.org/functions/binmode.html>
>
>
> Perl Forever!!!!
>
> Um abraço.
>
>
>
> 2012/10/28 Aureliano Guedes <guedes_1000 em hotmail.com>
>
>  Ola Monges,
> Mais uma vez venho incomodar com meus problemas.
>
> Aparentemente o modulo WWW::YouTube::Download<https://metacpan.org/module/WWW::YouTube::Download>não tem nenhum problema, mas quando eu uso em ambiente Windows ele salva o
> arquivo com defeitos, de forma que acaba não sendo lido pelos reprodutores
> de audio e video.
>
> meu codigo -> http://pastebin.com/k7v6rWCr
>
> Ja estou sem ideia de o que fazer. Imagino que isso se deva porque o Perl
> do Windows (como ja havia dito o Stanislaw) subistitui o CR por CRLF, isso
> deveria ser contornado usando binmode no filehandle.
> No caso deste modulo, isso já é feito:
>  99    open my $wfh, '>', $file or Carp::croak $file, " $!";
> 100    binmode $wfh;
>
>
> ref:
> https://metacpan.org/source/XAICRON/WWW-YouTube-Download-0.41/lib/WWW/YouTube/Download.pm
>
>
> Não entendo portanto porque o arquivo vem com problemas.
>
> Sera que se eu abrir o arquivo em modo binario e trocar todos CRLF por CR
> funcionaria?? Se sim como fazer isso??
>
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
>
>
>
> _______________________________________________ Rio-pm mailing list
> Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm
>
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/rio-pm/attachments/20121029/7d4ec2b7/attachment.html>


Mais detalhes sobre a lista de discussão Rio-pm