All pastes #904889 Raw Edit

kfo

public text v1 · immutable
·published 2008-02-15 11:08 UTC
rendered paste body
#!/usr/bin/perl
use strict;
use warnings;
use LWP::UserAgent;
use utf8;
my $lwp = LWP::UserAgent ->new;
$lwp->timeout(10);
$lwp->env_proxy;

$lwp->agent('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1;');
my $to  = shift || "";
$to = "$to/" unless ($to =~ /\/$/);
$0 = "rss";
my @address = (
  "http://podkast.nrk.no/program/dagsnytt.rss",
  "http://podkast.nrk.no/program/dagsrevyen.rss",
  "http://podkast.nrk.no/program/drillpikene.rss",
  "http://podkast.nrk.no/program/filmpolitiet.rss",
  "http://podkast.nrk.no/program/friluftsmagasinet.rss",
  "http://podkast.nrk.no/program/herreavdelingen.rss",
  "http://podkast.nrk.no/program/juntafil.rss",
  "http://podkast.nrk.no/program/ken_eller_torkil.rss",
  "http://podkast.nrk.no/program/mellom_himmel_og_jord.rss",
  "http://podkast.nrk.no/program/naturens_verden.rss",
  "http://podkast.nrk.no/program/nitimen.rss",
  "http://podkast.nrk.no/program/osenbanden.rss",
  "http://podkast.nrk.no/program/p3morgen.rss",
  "http://podkast.nrk.no/program/pepper_og_pasjon.rss",
  "http://podkast.nrk.no/program/paa_livet_laus.rss",
  "http://podkast.nrk.no/program/radioresepsjonen.rss",
  "http://podkast.nrk.no/program/nrk_sogn_og_fjordane.rss",
  "http://podkast.nrk.no/program/saann_er_livet.rss",
  "http://podkast.nrk.no/program/uroert.rss",
  "http://leoville.tv/podcasts/sn.xml",
  "http://rssnewsapps.ziffdavis.com/audioblogs/crankygeeks/cg.audio.xml",
  "http://leoville.tv/podcasts/floss.xml",
  "http://leoville.tv/podcasts/dgw.xml",
  "http://podcast.itavisen.no/",
  "http://rss.mac.com/suldalsposten/iWeb/Suldalspostcasting/Podcast/rss.xml",
  "http://www.qdnow.com/grammar.xml",
  "http://www.tipsfromthetopfloor.com/wp-rss2.php",
  "http://radio538.nl/538/xml/rss/dancedepartment.jsp",
  "http://podstar.homestarrunner.com/podcast.xml"
);

mkdir $to."log" unless (-d $to."log");

while (1){
  foreach my $url (@address){
     my $rss = $lwp->get($url);
     $rss->content =~ /<title>(.*?)<\/title>/m;
     my $title = $1;
     $title =~ s/[ ]/_/g;
     $title =~ s/[\!\"\#\¤\%\&\/()\=\?\`\¡\@\£\$\½\¥\{\[\]\}\\*\^\,\|\§]/_/g;
     $title =~ s/^[-_]|[-_]$//g;
     mkdir $to.$title or next;
     my @content = split(/\n/,$rss->content);
     foreach my $line (@content){
      if ($line =~ /enclosure url="(.*\....)"/){
        my $url = $1;
        $url =~ /.*[\/\\](.*)$/;
        my $filename = $1;
        system "wget  -o ".$to."log/$filename.log --retry-connrefused -U \"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1\" -c -t0 --timeout 60 \"$url\" -O \"$to$title/$filename\"";
      }
    }
  } 
  sleep 3600;
}