Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- use LWP::Simple;
- use CGI qw/unescape/;
- $|=1;
- while (<>) {
- @X = split;
- if ( $X[0] =~ m/^http\:\/\/.*/) {
- $x = $X[0];
- $_ = $X[0];
- $u = $X[0];
- } else {
- $x = $X[1];
- $_ = $X[1];
- $u = $X[1];
- @slices = m/[^\/\&]?(slices[^\/]*)/;
- }
- if (m/(videoplayback|liveplay|videogoodput).*[&?](title=[^\&\s]*)/) {
- @itag = m/[&?](itag=[0-9]*)/;
- @title = m/[&?]title=([^\&\s]*)/;
- my $title = unescape(@title);
- $title =~ s/(WWW.DOWNVIDS.NET-|\s\[www.videograbber.net\])//g;
- $title =~ s/(\s\+)/\_/g;
- my ($type, $size) = head($x);
- $out="OK store-id=http://video-down.youtube.squid.internal/title=" . $title . "&@itag&size=" . $size . "-byte";
- } elsif ($x =~ m/^https?\:\/\/[^\/]*(youtube|gstatic|google).*(ptracking|stream_204|playback|player_204|gen_204|watchtime|set_awesome|get_video|get_video_info|s\?|ads|qoe|csi).*(video_id|docid|\&v|content_v)\=([^\&\s]*).*/){
- $vid = $4 ;
- @cpn = m/[&?]cpn\=([^\&\s]*)/;
- if (defined($vid )) {
- $fn = "/tmp/@cpn";
- unless (-e $fn) {
- open FH,">".$fn ;
- print FH "$vid\n";
- close FH;
- }
- }
- $out=$x . "\n";
- } elsif ($x =~ m/^https?\:\/\/.*(youtube|google|gstatic).*(videoplayback|liveplay|videogoodput).*/) {
- @itag = m/[&?](itag=[0-9]*)/;
- @ids = m/[&?]id\=([^\&\s]*)/;
- @mime = m/[&?](mime\=[^\&\s]*)/;
- @cpn = m/[&?]cpn\=([^\&\s]*)/;
- @range = m/[&?](range=[^\&\s]*)/;
- if (defined($cpn[0])) {
- $fn = "/tmp/@cpn";
- if (-e $fn) {
- open FH,"<".$fn ;
- $id = <FH>;
- chomp $id ;
- close FH ;
- } else {
- $id = $ids[0] ;
- }
- } else {
- $id = $ids[0] ;
- }
- @range = m/[&?](range=[^\&\s]*)/;
- $out="http://video-srv.youtube.com.squid.internal/id=" . $id . "&@itag@range@mime\n";
- } else {
- $out=$x;
- }
- if ( $X[0] =~ m/^http\:\/\/.*/) {
- print "OK store-id=$out\n" ;
- } else {
- print $X[0] . " OK store-id=$out\n" ;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement