version 1.1, 2011/08/18 12:39:12
|
version 1.5, 2012/12/20 16:18:45
|
Line 11 my $ver = q/$Id$/;
|
Line 11 my $ver = q/$Id$/;
|
my $comicFile = "comics.conf"; |
my $comicFile = "comics.conf"; |
my %comics = &readComicConfig ( $comicFile ); |
my %comics = &readComicConfig ( $comicFile ); |
my %dates = &fetchDates(); |
my %dates = &fetchDates(); |
|
my $days_ago = 0; # Set this to fetch comics from X days ago |
my $baseDir = $comics{'configs'}{'base_directory'} || "."; |
my $baseDir = $comics{'configs'}{'base_directory'} || "."; |
my $imageDir = $baseDir . "/" . ( $comics{'configs'}{'image_directory'} || "images" ) . |
my $imageDir = $baseDir . "/" . ( $comics{'configs'}{'image_directory'} || "images" ) . |
"/$dates{'mon2'}$dates{'year2'}"; |
"/$dates{'mon2'}$dates{'year2'}"; |
my $indexDir = $baseDir . "/" . ( $comics{'configs'}{'index_directory'} || "indexes" ); |
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; |
my $DATE=`date`; chomp $DATE; |
Line 34 foreach my $comic ( sort keys %comics )
|
Line 35 foreach my $comic ( sort keys %comics )
|
&writeComic ( \%comics, $comic, \%dates ); |
&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 ); |
## &writeMainIndex ( \%dates ); |
|
|
&writeFooter( \%dates ); |
&writeFooter( \%dates ); |
Line 162 sub writeFooter {
|
Line 174 sub writeFooter {
|
open INDEX, ">>$indexFile"; |
open INDEX, ">>$indexFile"; |
print INDEX <<EOF; |
print INDEX <<EOF; |
</table> |
</table> |
<center>Generated at $sysDate |
<center> |
|
<font size="2"> |
|
Generated on: <font color="green">$sysDate</font><br/> |
|
Version: <font color="green">$ver</font></font> |
<p> |
<p> |
<a href="http://validator.w3.org/check?uri=referer"><img |
<a href="http://validator.w3.org/check?uri=referer"><img |
src="http://www.w3.org/Icons/valid-xhtml10-blue" alt="Valid XHTML 1.0 Transitional" height="31" width="88" border="0" /></a> |
src="http://www.w3.org/Icons/valid-xhtml10-blue" alt="Valid XHTML 1.0 Transitional" height="31" width="88" border="0" /></a> |
Line 221 sub directDownload ($$) {
|
Line 236 sub directDownload ($$) {
|
my $cDir = $date->{'mon2'} . $date->{'year2'}; |
my $cDir = $date->{'mon2'} . $date->{'year2'}; |
my $cDate = $date->{'day2'}; |
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); |
return system($cmd); |
} |
} |
|
|
Line 266 sub indexDownload ($$) {
|
Line 281 sub indexDownload ($$) {
|
if ( $comicLine ) { |
if ( $comicLine ) { |
if ( $comicLine =~ m/(gif|jpg|png)/i ) { $comics->{$comic}{'ext'} = $1; } |
if ( $comicLine =~ m/(gif|jpg|png)/i ) { $comics->{$comic}{'ext'} = $1; } |
my $comicURL = ( $comicLine =~ m/http/ ) ? $comicLine : $mainURL . $comicLine; |
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 ); |
system( $cmd ); |
return 0; |
return 0; |
} |
} |
Line 302 sub fetchDates () {
|
Line 317 sub fetchDates () {
|
($dates{'day'}, $dates{'mon'}, $dates{'year'}, $dates{'dow'}) = (localtime)[3,4,5,6]; |
($dates{'day'}, $dates{'mon'}, $dates{'year'}, $dates{'dow'}) = (localtime)[3,4,5,6]; |
|
|
## If you missed a day or two, reflect it here: |
## 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{'year'} += 1900; |
$dates{'year2'} = substr $dates{'year'}, 2, 2; |
$dates{'year2'} = substr $dates{'year'}, 2, 2; |