User documentation

Table of contents

Overview

GNU phpGrabComics is a software program to grab and save strips from the web.

Its development started in 2001, to automatically download the daily Dilbert strip. It has been released, since the first steps of its development, as free software, under the terms of GNU General Public License.

phpGrabComics is now a stable software and supports a huge number of comics. Since December 2003, phpGrabComics is part of the GNU project.

phpGrabComics architecture is based on three different components.

The phpGrabComics server is the main application. A phpGrabComics server is in charge of getting comics from different sources and allows to save comics for personal use. A phpGrabComics server will not re-publish the comics. The phpGrabComics server will instead share information that can be used by other programs to download the comics and will publish the location of the comics themselves.

The phpGrabComics clients are software that can be used to connect to a phpGrabComics server and to download the comics. phpGrabComics clients can be generic applications (like web browsers or RSS readers) or applications specifically developed for phpGrabComics ( phpGrabComics ports ).

The phpGrabComics bots (robots) are software that is used to automatically send commands to a phpGrabComics server. A phpGrabComics bot can be used, for example, to tell the phpGrabComics server to download the daily strips. phpGrabComics command line is the phpGrabComics robot.

Syndication

phpGrabComics servers provide RSS feeds for the daily comics.

Using the RSS feeds is the suggested way to easily collect your daily comics. RSS feeds can be used for easily reading comic strips:

A non-exaustive list of other RSS aggregators (thanks to http://dwlt.net/tapestry/) includes:

phpGrabComics and Thunderbird

The following steps apply to Thunderbird (version 0.9 at least required). If you are using any other RSS aggregator, please refer to its documentation.

  1. Create a new account (From menu File > New > Account) and choose, as type of account, RSS News and Blogs
  2. Set up the account: Edit > Properties > Select the account you have created > Manage subscriptions > Add
  3. Give the URL of phpGrabComics RSS. Choose http://www.baravalle.it/phpGrabComics/phpgrabcomics.php?from_real_site=True for the all the daily strips or choose only the comics you want from the list of available RSS feeds. Use any different phpGrabComics server if you prefer.

Done! Now you can access your daily comics using Thunderbird.

Thunderbird with phpGrabComics strips
(click to enlarge)

Private and public feeds

Some comics, due to technicall restrictions or to the complain of the copyright holders, are not available to the general public, but are still available to the administrator of the phpGrabComics server.

Since phpGrabComics version 1.5beta6, administrators of a phpGrabComics server can access the local copy of all the supported comics via RSS (that means, not only the shorter list of comics available to all users, but all the comics). The comics that cannot be accessed using the normal RSS feeds, can be accessed using a private feed pointing to the local copy of the comic that is generated by the phpGrabComics server when updating the comics. A non-authenticated user cannot access the local copy of the comics.

The next line shows an RSS URL for accessing a private feed:

http://server/phpgrabcomics.php?from_real_site=False&user=username&psw=password&comic_array[]=comic

The standard RSS URL for public feeds is:

http://server/phpgrabcomics.php?from_real_site=True&comic_array[]=comic

Replace the URL of phpGrabComics, the user name, the password and the comic according to your settings.

External and internal DTD

phpGrabComics by default is using an internal DTD. If you want to have an external DTD instead of an internal one, add the parameter dtd=external to the URL:

http://server/phpgrabcomics.php?comic_array[]=comic&dtd=external

An external DTD might be required if you want to access the URL with a client that does not accept a internal DTD using entities (e.g. Internet Explorer).

Some RSS clients do not work with internal or external DTDs. Try which ones suits you better.