Si vous mettez uniquement MASK @MASK2, seuls les fichiers répondant
aux masques *.SHTML, *.SHTM, *JPEG, *.GIF, et *.WAV seront capturés.
Voyez le tableau récapitulatif pour savoir quelles commandes supportent ceci.
Macros
------
WWWGrab/2 vous permet de définir et d'utiliser de simples macros pour
effectuer un rechercher/remplacer. Le principe est similaire à celui des
"makefiles". La syntaxe est :
#define <var> [value]
<var> est la variable à définir et [value] est sa valeur (facultatif).
Exemples :
#define NOBIN
crée une variable nommée NOBIN sans valeur
#define USERPATH c:\jirir
crée une variable USERPATH et met sa valeur à c:\jirir
Il y a deux possibilités pour utiliser une variable. La première consiste à
remplacer simplement toutes les occurences. Par exemple, avec le USERPATH
défini ci-dessus, les deux lignes suivantes sont identiques :
LOCALPATH $(USERPATH)\mirrors
LOCALPATH c:\jirir\mirrors
Cela permet de modifier facilement tout un fichier de configuration quand
on veut par exemple utiliser un autre répertoire pour recevoir les
fichiers.
La deuxième façon d'utiliser les variables est de le faire à l'intérieur
d'une condition. Une condition permet de changer une instruction dans le
.INI. La syntaxe est :
#ifdef <var> - OU -
#ifndef <var>
...
#else
...
#endif
Si la variable en question est définie (il est inutile de lui assigner une
valeur), les lignes qui suivent #ifdef sont lues jusquà #else. Dans le cas
contraire, ce sont les lignes entre #else et #endif. Si l'on utilise
#ifndef, c'est tout à fait le contraire qui se produit. Exemples :
#ifdef OS2
LOCALPATH c:\wwwgrab2\mirrors
#else
#ifdef UNIX
LOCALPATH /home/w3g/mirrors
#else
LOCALPATH c:\wwwgrab95\mirrors
#endif
#endif
Ces lignes définissent le LOCALPATH en fonction du système d'exploitation
utilisé. OS2 et UNIX sont des variables prédéfinies.
Les expressions conditionnelles peuvent être emboîtées sur au plus 8
niveaux.
La liste des variables prédéfinies est donnée à la section Variables
prédéfinies.
Le format du fichier de configuration
-------------------------------------
Toutes les commandes et les options dans le fichier de configuration ont le
même format :
<commande> [paramètres]
Des espaces puvent précéder la commande et il doit y avoir au moins un espace
entre la commande et les paramètres éventuels.
Les commentaires sont précédés d'un point virgule. Tout texte suivant un point
virgule est ignoré :
URL http://www.web.com/ ; ceci est un commentaire
; voici un autre commentaire.
Toutes les URL doivent être complètes. Utilisez toujours http://www.site.com,
et non pas site ou site.com ou même www.site.com. Vous pouvez utiliser des
adresses IP et des numéros de port : http://www.site.com:8080/misc ou
http://127.0.0.1.
Liste détaillée des commandes
-----------------------------
Ce qui suit est une description détaillée de chaque commande et option qui
contrôlent le comportement de WWWGrab/2.
ADD <chemin>
Ajoute le chemin spécifié à la liste des fichiers demandées. Cette
commande peut être utilisée plusieurs fois et s'applique toujours à la
première commande URL.
Exemple:
URL http://www.xxx.yyy/path1/index.html
URL http://foobar.com/
ADD /path2/pic/index.html
Capture: http://www.xxx.yyy/path1/index.html ET
http://www.xxx.yyy/path2/pic/index.html ET
http://foobar.com/
ALL
Normalement, si WWWGrab/2 voit qu'un fichier existe déjà, il demande
au serveur distant de ne lui envoyer le fichier que s'il est plus
récent que le fichier local. Si vous voulez mettre à jour tous les
fichiers sans tenir compte de leur date ou de leur existence sur la
machine locale, vous devez utiliser l'option ALL.
ALLOW <URL>
Spécifie explicitement qu'un sous-répertoire est capturable. Cette
commande peut être utilisée plusieurs fois.
Exemple:
ALLOW http://www.xxx.yyy/allow/this/path/
CHAM <nombre>
Certains serveurs (spécialement Netscape) essayent de reconnaître le
nom du client. S'ils ne reconnaissent pas ce nom, ils n'envoient pas
de données. Vous pouvez utiliser cette option pour changer le nom du
client. <nombre> est à choisir parmi ceux-ci :
0 - WWWGrab (par défaut)
1 - Mozilla Netscape
2 - WebExplorer IBM WebExplorer/2
3 - WebCrawler robot WebCrawler
4 - InfoSeek robot InfoSeek
5 - Harvest un robot
6 - Mosaic NCSA Mosaic
7 - Lynx Lynx, browser en mode texte
8 - PRODIGY-WB Browser de Prodigy
9 - Internet Browser de Microsoft
Exemple:
CHAM 2
Envoie au serveur WebExplorer comme nom de client.
CHANGESITE <nbr de sites>
Normalement, si WWWGrab/2 trouve un lien vers un autre serveur WWW
dans un fichier HTML, le lien est ignoré. Si vous voulez permettre à
WWWGrab/2 de suivre ces liens vers un autre site, utilisez la commande
CHANGESITE. La valeur par défaut est 0 qui signifie que WWWGrab/2 ne
doit pas changer de site. Soyez particulièrement vigilent à ce que
vous entrez ici ! Vous pouvez commencer à capturer le Web dans son
intégralité !
Exemple:
CHANGESITE 2
CLIENT
Quand l'option CLIENT est utilisée, WWWGrab/2 transforme tous les liens
en liens relatifs. <a href="/www/files/foo.html"> devient
<a href="foo.html>. Utilisez cette option si vous voulez pouvoir visiter
un site localement. (Les inclusions serveurs (SSI), les programmes CGI,
et certains programmes Java ne fonctionneront pas car ils requierent un
serveur HTTP)
DEFAULTNAME <nom>
Parfois, les liens pointent sur un répertoire plutôt qu'un fichier.
Dans ce cas, si le nom du fichier n'est pas connu, <nom> sera utilisée
pour ce répertoire. La valeur par défaut est "index.html".
Exemple:
DEFAULTNAME Bienvenue.html
DENY <URL>
L'URL donnée ainsi que tous les sous-répertoires de celle-ci ne sont
pas traités. Souvent, des répertoires spécifiques ne sont pas
désirables. Vous pouvez refuser de récupérer ces URLs en utilisant
cette option. Elle peut-être utilisée plusieurs fois.
Exemple:
DENY http://www.xxx.yyy/deny/this/path/
Ne charge aucun fichier du répertoire /deny/this/path/.
Si vous n'incluez pas le "slash" (/) de fin
(http://www.xxx.yyy/deny/this/path) alors tous les sous-répertoires
commençant par "path" ne sont pas traités. ceci inclus
"paths.html" "path1/news", etc.
DO <DEF | HTML | IMG | SND> <NOTHING | command>
Cette commande permet d'exécuter une commande pour chaque fichier capturé
avec succès. Vous pouvez spécifier différentes commandes pour différents
types de fichiers. Si aucune commande n'est associée avec un type
particulier de fichier, la commande par défaut (DEF) est exécutée.
Vous pouvez utiliser les options suivantes avec cette commande :
%d profondeur
%h hôte (serveur WWW)
%l nom et chemin du fichier local
%p URL parent (d'où vient ce lien)
%r fichier distant (URL sans l'hôte)
%t date/heure du fichier dans le format spécifié dans la RFC 822
%u URL
%% signe "pour cent"
NOTE : L'utilisation des variables prédéfinies est conseillée en place
de ces options. Pour plus d'informations, voyez les sections Macros et
Variables prédéfinies.
Si vous ne voulez pas exécuter une commande pour un type de fichier,
mais que vous voulez exécuter la commande par défaut, spécifiez NOTHING
comme commande.
Les types de fichier sont :
HTML - Fichiers définis par text/html
IMG - Fichiers définis par image/*
SND - Fichiers définis par audio/*
DEF - Les autres fichiers
Exemples :
DO HTML start /b html2txt %l
; invoque html2txt en tâche de fond pour chaque fichier HTML
; ce programme s'exécutera en même temps que WWWGrab/2, cela peut
; surcharger le système
DO SND play file=%l
; joue tous les sons capturés
DO IMG NOTHING
; ne fait rien avec les images
DO DEF echo %u >>other.files
; place dans un fichier journal les autres fichiers
EXCL <www-server>
Cette commande définit un serveur WWW a exclure de la capture. Cette
commande peut être utilisée avec la commande CHANGESITE. Elle peut être
utilisée plusieurs fois.
Exemple:
EXCL www.yyy.zzz
EXCL microsoft.is.lame.org En passant, essayez cette URL :-)
EXTENSIONS <liste d'extensions>
La commande EXTENSIONS définit une liste d'extensions. Seuls les
fichiers dotés de ces extensions seront capturés. Les extensions
sont séparées par un espace. HTM, HTML, SHTM, SHTML, JPG, GIF, WAV,
AU, CLASS, et JAVA sont automatiquement définis, il n'y a donc pas
besoin de les spécifier avec la commande EXTENSION. Vous pouvez
alternativement utiliser le caractère ':' pour exclure certaines
extensions. Si vous spécifiez à la fois certaines extensions comme
étant exclue et d'autres comme étant à inclure, seule la commande
d'exclusion sera suivie (voir le dernier exemple). Soyez vigilent
avec cette commande ! En incluant EXE ou ZIP, vous pouvez user un
espace disque important si vous commencez à capturer un site comme
hobbes ou sunsite !
Exemple:
EXTENSIONS ZIP C
Inclut les extensions ZIP et C à la capture.
EXTENSIONS :ZIP :C??
Toutes les fichiers seront capturés sauf ceux ayant l'extension ZIP
ou commençant par C (C++, C--, C, C00...)
EXTENSIONS HTML JAVA :CLASS
Cette commande capture tous les fichiers sauf ceux avec l'extension
CLASS !
FAT
Cette option active la compatibilité FAT. Dans ce mode, WWWGrab/2
stocke les fichiers dans un répertoire unique utilisant les noms au
format FAT 8.3. Il corrige automatiquement les liens. Cette option est
automatiquement activée si le chemin local (LOCALPATH) est situé sur
une partition FAT ou tout autre format ne supportant pas les noms de
fichier longs.
FIXSL
Parfois, les auteurs de pages n'ajoutent pas le "slash" ("/") à leurs
liens. Vous pouvez utiliser FIXSL pour corriger cet oubli.
HUP <mins>
La commande HUP permet de restreindre le temps pendant lequel
WWWGrab/2 doit fonctionner (en minutes). Quand le temps limite est
atteint, WWWGrab/2 se terminera. Si un fichier est en cours de
transfert WWWGrab/2 terminera d'abord le transfert de ce fichier.
Exemple :
HUP 90
WWWGrab/2 tournera au plus 90 minutes.
HUPF <fichier>
Cette commande indique à WWWGrab/2 de créer le fichier <fichier> quand
il se termine. Cela permet entre autre à un "scheduler" utilisant les
sémaphores de prendre connaissance de l'évènement et de couper la
communication.
Exemple
HUPF c:\work\wwwhup
WWWGrab/2 créera le fichier c:\work\wwwhup quand il se terminera.
I401
Si WWWGrab/2 envoie une requête pour réclamer un fichier s'il a été
mis à jour (conditionnal GET) et que ce fichier est protogé et non mis
à jour, certains serveurs renvoient un code 401. Utilisez l'option
I401 pour ignorer cette réponse et charger le fichier.
INCLUDE <fichier>
Cette commande vous permet d'inclure un autre fichier de configuration
dans le fichier de configuration en cours de traitement. Les imbrications
sont autorisées jusqu'à une profondeur maximum de 4. Cette commande est
utile pour inclure des commandes utilisées dans plusieurs fichiers de
configuration. Voyez aussi les fichiers '@' plus loin.
Exemple:
INCLUDE realms.inc
INCL urls.inc
IRO
Certains sites Web contiennent un fichier indiquant aux robots tels
que WWWGrab/2 les fichiers qu'ils ne peuvent pas récupérer. Normalement,
WWWGrab/2 obéit à ce fichier. Si vous désirez l'ignorer, il suffit
d'utiliser l'option IRO (Ignorer RObot).
ISO9660
Cette option force WWWGrab/2 à sauver tous les fichiers en utilisant
la norme ISO9660 pour les noms des fichiers. L'ISO 9660 est le format le
plus courant pour les CDROM. Il permet uniquement les lettres en
majuscules, le caractère souligné (_) et des chiffres dans le nom du
fichier.
LOCALPATH <chemin>
WWWGrab/2 doit savoir où placer les fichiers qu'il charge.
Cette commande indique à WWWGrab/2 dans quel répertoire de votre
machine locale l'URL sera capturée.
Exemple:
LOCALPATH F:\GRAB\IBM\
Place les fichiers capturés dans le répertoire F:\GRAB\IBM\.
LOG <fichier-journal> <chaîne>
Cette commande enregistre tous les fichiers correctement capturés dans le fichier journal <fichier-journal> dans le format précisé dans <chaîne>. Dans <chaîne>, vous pouvez utiliser ces caractères spéciaux :
%d profondeur
%h hôte (serveur WWW)
%l nom et chemin du fichier local
%p URL parent (d'où vient ce lien)
%r fichier distant (URL sans l'hôte)
%t date/heure du fichier dans le format spécifié dans la RFC 822
%u URL
%% signe "pour cent"
\n nouvelle ligne
\t tabulation
\\ signe anti-slash (\)
Note : cette commande ne rajoute pas automatiquement le CRLF
(retour chariot) à la fin de chaque ligne.
Exemple :
LOG foo.log URL %u est placée dans %l\n
donnera :
URL http://www/index.html est placée dans \grab\www\index.html
URL http://www/foo.gif est placée dans \grab\www\foo.gif
...
MAP
Cette option active la création d'une carte. Ce fichier est nommé
w3gmap.htm. Il contient une carte de tous les sites capturés. Vous
pouvez l'utiliser manuellement plus tard.
MASK <masque de fichiers>
Utilisez cette commande si vous voulez uniquement capturer les
fichiers spécifiés dans <masque de fichiers>. Cette commande annule la
commande EXTENSIONS. Vous DEVEZ explicitement définir tous les masques
des fichiers que vous voulez récupérer en utilisant cette commande, en
incluant donc les extensions par défaut comme HTML, etc. ! Cette
commande peut être utilisée plusieurs fois. <masque de fichiers>
accepte les caractères génériques (wildcards). The '?' peut remplacer
n'importe quel caractère. Le '*' remplace n'importe quelle chaîne de
caractères (qu'elle soit vide ou non). Ils peuvent être placés
n'importe où et peuvent être utilisés plusieurs fois.
Exemple:
MASK *.jpg
Capture tous les fichiers avec l'extension .jpg.
MASK ?a*.html
Capture tous les fichiers commençant par n'importe quel caractère
puis suivi d'un a, suivi d'autant de caractères que l'on veut et
terminé par .html. zaphod.html 0a.html répondent à ce masque.