--- comics/fetch.pl.new 2011/08/18 12:39:12 1.1 +++ comics/fetch.pl.new 2013/01/10 14:25:57 1.7 @@ -7,15 +7,16 @@ use Data::Dumper; ## ## Some default values ## -my $ver = q/$Id: fetch.pl.new,v 1.1 2011/08/18 12:39:12 nick Exp $/; +my $ver = q/$Id: fetch.pl.new,v 1.7 2013/01/10 14:25:57 nick Exp $/; my $comicFile = "comics.conf"; my %comics = &readComicConfig ( $comicFile ); +my $days_ago = 0; # Set this to fetch comics from X days ago my %dates = &fetchDates(); my $baseDir = $comics{'configs'}{'base_directory'} || "."; my $imageDir = $baseDir . "/" . ( $comics{'configs'}{'image_directory'} || "images" ) . "/$dates{'mon2'}$dates{'year2'}"; my $indexDir = $baseDir . "/" . ( $comics{'configs'}{'index_directory'} || "indexes" ); -my $USER_AGENT = "ozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.18) Gecko/20110628 Ubuntu/10.10 (maverick) Firefox/3.6.18"; +my $USER_AGENT = "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.18) Gecko/20110628 Ubuntu/10.10 (maverick) Firefox/3.6.18"; my $DATE=`date`; chomp $DATE; @@ -34,6 +35,17 @@ foreach my $comic ( sort keys %comics ) &writeComic ( \%comics, $comic, \%dates ); } +my $D = `date +%d`; chomp $D; +print "Finding in $imageDir/*-$D.jpg\n"; +foreach my $file ( glob( "$imageDir/*-$D.jpg" ) ) +{ + my $size = `/usr/bin/identify $file`; + $size =~ s/.*\s(\d+)x\d+.*/$1/; + + system( "/usr/bin/convert -resize 640 $file $file" ) + if ( $size > 640 ) +} + ## &writeMainIndex ( \%dates ); &writeFooter( \%dates ); @@ -162,7 +174,11 @@ sub writeFooter { open INDEX, ">>$indexFile"; print INDEX < -
Generated at $sysDate +
+ +Generated on: $sysDate
+Version: $ver
+CVS: http://demandred.dyndns.org/cgi-bin/cvsweb/comics/

Valid XHTML 1.0 Transitional @@ -221,7 +237,7 @@ sub directDownload ($$) { my $cDir = $date->{'mon2'} . $date->{'year2'}; my $cDate = $date->{'day2'}; - my $cmd = "wget -q $file --referer=\"" . $comics->{$comic}{'url'} ."\" --user-agent=\"$USER_AGENT\" -O - | /usr/bin/convert -resize 640 - jpeg:images/$cDir/$comic-$cDate.jpg"; + my $cmd = "wget -q $file --referer=\"" . $comics->{$comic}{'url'} ."\" --user-agent=\"$USER_AGENT\" -O - | /usr/bin/convert - jpeg:images/$cDir/$comic-$cDate.jpg"; return system($cmd); } @@ -266,7 +282,7 @@ sub indexDownload ($$) { if ( $comicLine ) { if ( $comicLine =~ m/(gif|jpg|png)/i ) { $comics->{$comic}{'ext'} = $1; } my $comicURL = ( $comicLine =~ m/http/ ) ? $comicLine : $mainURL . $comicLine; - my $cmd = "wget --user-agent=\"$USER_AGENT\" --referer=\"" . $comics->{$comic}{'url'} . "\" -q $comicURL -O - | /usr/bin/convert -resize 640 - jpeg:images/$cDir/$comic-$cDate.jpg"; + my $cmd = "wget --user-agent=\"$USER_AGENT\" --referer=\"" . $comics->{$comic}{'url'} . "\" -q $comicURL -O - | /usr/bin/convert - jpeg:images/$cDir/$comic-$cDate.jpg"; system( $cmd ); return 0; } @@ -302,7 +318,7 @@ sub fetchDates () { ($dates{'day'}, $dates{'mon'}, $dates{'year'}, $dates{'dow'}) = (localtime)[3,4,5,6]; ## If you missed a day or two, reflect it here: - # $dates{'day'}-=1; ## <-- 5 days ago + $dates{'day'} -= $days_ago; ## <-- 5 days ago $dates{'year'} += 1900; $dates{'year2'} = substr $dates{'year'}, 2, 2;