Author image Johan Vromans
and 1 contributors


Comics - Comics aggregator in the style of Gotblah


  perl -MComics -e 'main()' -- [options] [plugin ...]


  perl [options] [plugin ...]

If the associated collect tool has been installed properly:

  collect [options] [plugin ...]

     --spooldir=XXX     where resultant images and index must be stored
     --enable           enables the plugins (no aggregation)
     --disable          disables the plugins (no aggregation)
     --list             lists the plugins (no aggregation)
     --rebuild          rebuild index.html, no fetching
     --refresh          consider all images as new
     --ident            shows identification
     --help             shows a brief help message and exits
     --man              shows full documentation and exits
     --verbose          provides more verbose information
     --quiet            provides no information unless failure



Designates the spool area. Downloaded comics and index files are written here.


The plugins that are named on the command line will be enabled for future runs of the aggregator. Default is to enable all plugins.

Note that when this command is used, the program exits after enabling the plugins. No aggregation takes place.


The plugins that are named on the command line will be disabled for future runs of the aggregator. Default is to disable all plugins.

Note that when this command is used, the program exits after disabling the plugins. No aggregation takes place.


Provides information on the selected (default: all) plugins.

Note that when this command is used, no aggregation takes place.


Recreates index.html in the spooldir without fetching new comics.


Prints a brief help message and exits.


Prints the manual page and exits.


Prints program identification.


Provides more verbose information. This option may be repeated for even more verbose information.


Silences verbose information.


If present, process only the specified plugins.

This is used for disabling and enabling plugins, but it can also be used to test individual plugins.


The normal task of this program is to perform aggregation. it will load the available plugins and run all of them.

The plugins will examine the contents of comics sites and update the 'cartoon of the day' in the spool area.

Upon completion, an index.html is generated in the spool area to view the comics collection.

It is best to run this program from the spool area itself.

Special commands

Note that no aggregation is performed when using any of these commands.

With command line option --list a listing of the plugins is produced.

Plugins can be enabled and disabled with --enable and --disable respectively.


Important: This program assumes that the plugins can be found in ../lib relative to the location of the executable file.

All suitable files are examined and loaded.

Plugins are derived from Fetcher classes, see below.

See Comics::Plugin::Sigmund for a fully commented plugin.


Fetchers implement different fetch strategies. Currently provided are:

Comics::Fetcher::Cascade - fetch a comic by loading and examining a series of URLs.

Comics::Fetcher::Direct - fetch a comic by URL.

Comics::Fetcher::Single - fetch a comic by examining the comic's home page.

Comics::Fetcher::GoComics - fetch a comic from a GoComics site.


Johan Vromans, <JV at CPAN dot org>


Development of this module takes place on GitHub: .

You can find documentation for this module with the perldoc command.

    perldoc Comics

Please report any bugs or feature requests using the issue tracker on GitHub.


The people behind Gotblah, for creating the original tool.


Copyright (C) 2016,2018 Johan Vromans,

This module is free software. You can redistribute it and/or modify it under the terms of the Artistic License 2.0.

This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.