分页: 1 / 1

ee的那个flash.pl怎么运行?

发表于 : 2011-11-13 23:55
ubuntu606
ee的那个flash.pl怎么运行?用这个脚本怎么把youku分段视频压缩成一个?

Re: ee的那个flash.pl怎么运行?

发表于 : 2011-11-14 0:41
b33e
把flash.pl属性设置为可执行,然后flash.pl 后面加上视频网址就可以了。

我也写了一个下载flash的脚本,不过是利用缓冲,从电脑的缓存里面取出来。 :em06 :em06

Re: ee的那个flash.pl怎么运行?

发表于 : 2011-11-14 9:59
eexpress
export flv2avi=1
如果这样设置了一次,就自动压片,而且是调用的指定的profile,你那边没设置profile的。压片需要mencoder。
通常,我不压片,直接totem播放整个目录。

Re: ee的那个flash.pl怎么运行?

发表于 : 2011-11-16 13:43
ubuntu606
运行之后一闪就没有了,视频网址加在哪? :em06

Re: ee的那个flash.pl怎么运行?

发表于 : 2011-11-16 15:49
eexpress
脚本参数嘛。

如果是opera,可以建立右键菜单,直接浏览器里面点击下载。

你没安装 notify-send? 都有弹出提示的。

Re: ee的那个flash.pl怎么运行?

发表于 : 2011-11-16 19:48
ubuntu606
出现这样的情况

Re: ee的那个flash.pl怎么运行?

发表于 : 2011-11-16 20:03
lilydjwg
ubuntu606 写了:出现这样的情况
没 !# 啊。。。。 perl flash.pl 吧。

Re: ee的那个flash.pl怎么运行?

发表于 : 2011-11-16 20:13
eexpress
你哪里下载的?或者哪里复制的?居然提示符,都带了。 lol

完整的给你一个吧。

Re: ee的那个flash.pl怎么运行?

发表于 : 2011-11-16 21:59
ubuntu606
eexpress 写了:你哪里下载的?或者哪里复制的?居然提示符,都带了。 lol

完整的给你一个吧。
bingo! 这个可以 :em05
哦,原来是下载的文件有问题啊,就是在论坛下的

代码: 全选

● cat bin/flash-down.pl
#!/usr/bin/perl -w

use utf8;
use strict;
use WWW::Mechanize;
use Net::DBus;

my $dir="$ENV{HOME}/下载/视频下载";
-d $dir && chdir $dir;

$_=$ARGV[0];
s/^http:\/([a-z0-9])/http:\/\/$1/;
chomp; s/\//%2F/g; s/:/%3A/g;
$_="http://www.flvcd.com/parse.php?flag=&format=high&kw=$_&sbt=%BF%AA%CA%BCGO%21";

my $bus = Net::DBus->session->get_service('org.freedesktop.Notifications')->get_object('/org/freedesktop/Notifications','org.freedesktop.Notifications');
my $mech = WWW::Mechanize->new(agent=>'Opera/9.80 (X11; Linux i686; U; en) Presto/2.6.30 Version/10.60');
#my $mech = WWW::Mechanize->new();
$mech -> get($_);
if ($mech->success()) {
        $_=$mech->content();
        if(/当前解析视频.*/){
        $_=$&; s/^.*?strong>//; s/<strong.*//;
        print "\e[31m\e[1m".$_."\e[0m==================\n";
        s/ .*//;
        mkdir "$_"; chdir "$_";
        my $name="$_";
        my @link=$mech->find_all_links(text_regex => qr/http:\/\/.*[0-9a-fA-F]*/,);
        my $size=@link;
        $bus->Notify("flash", 0, "sunny", "$name", "共获取 $size 个地址。", [], { }, -1);
#        `xtermcontrol --title "flash-down.pl_下载_$name"`;
        print "\e]2;flash-down.pl_下载_$name\a";
        print map "=> \e[32m".$_->url()."\e[0m\n",@link;
        open(LINK,">link.log"); print LINK map $_->url()."\n",@link; close LINK;
        my $cnt=1; my $proc="▭"x$size;
        foreach(@link){
                my $add=$_->url();
                print "\e[31m下载\e[0m => \e[32m$add\e[0m\n";
                my $file=sprintf "%02d.flv",$cnt;
                `wget -c --tries=5 --user-agent='Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.3) Gecko/2008092416 Firefox/3.0.3' "$add" -O $file`;
#                `wget -c --user-agent='Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.3) Gecko/2008092416 Firefox/3.0.3' $add -O $file 2>/dev/null`;
                $_=$?==0?"■":"□";$proc=~s/▭/$_/;
#                $bus->Notify("flash", 0, ($?==0?"sunny":"error"), "$name", "已经完成下载 $cnt / $size ,wget返回:$? 。\n进度:$proc", [], { }, -1);
                print "\e[31m\e[1m$name 已经完成下载 $cnt / $size\e[0m ,wget返回:$? 。进度:\e[31m\e[1m$proc\e[0m\n";
                print "\e]2;$name 下载进度 $proc\a";
                $cnt++;
        }
        chdir '..';
        `echo "$ARGV[0]\t《$_》\t结果:$proc">>flash-down.log`;
        `aplay '/home/exp/媒体/事件声音-et/I-need-ammo.wav'`;
        } else {
        /提示:.*/; $_=$&; s/<br\/>.*$//;
        $bus->Notify("flash", 0, "error", "flash 解析失败", "$_\n:(", [], { }, -1);
        }
} else {
        $bus->Notify("flash", 0, "gtk-cancel", '网页无效', ':(', [], { }, -1);

}

#======================