Hello !
Voilà, j'utilise spamassassin pour filter mes mails.
mais j'aime avoir des stats.
donc la sortie de spamc ressemble à ca :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 
------------------ Début de Rapport SpamAssassin ---------------------
Ce message est probablement du SPAM (message non sollicité envoyé en
masse, publicité, escroquerie...).
 
Cette notice a été ajoutée par le système d'analyse "SpamAssassin" sur
votre serveur de courrier "sec-pr0018", pour vous
aider à identifier ce type de messages.
 
Le système SpamAssassin ajoute un en-tête "X-Spam-Flag: YES" aux
messages qu'il considère comme étant probablement du Spam.
Vous pouvez si vous le souhaitez utiliser cette caractéristique
pour régler un filtre dans votre logiciel de lecture de courrier,
afin de détruire ou de classer à part ce type de message.
 
Si ce robot a classifié incorrectement un message qui vous était
destiné, ou pour toute question, veuillez contacter l'administrateur
du système par e-mail à the administrator of that system .
 
Voir http://spamassassin.apache.org/tag/ pour plus de détails (en anglais).
 
Détails de l'analyse du message:   (44.8 points, 5.0 requis)
 0.1 HTML_80_90             BODY: Le message est composé de 80 à 90% de HTML
 0.0 HTML_MESSAGE           BODY: HTML inclus dans le message
-2.6 BAYES_00               BODY: L'algorithme Bayésien a évalué la probabilité de spam entre 0 et 1%
                            [score: 0.0000]
 1.2 RCVD_IN_BL_SPAMCOP_NET RBL: Relais listé dans http://spamcop.net/bl.shtml
                 [Blocked - see <http://www.spamcop.net/bl.shtml?82.91.14.39>]
 3.1 RCVD_IN_XBL            RBL: Received via a relay in Spamhaus XBL
                            [82.91.14.39 listed in sbl-xbl.spamhaus.org]
 0.4 URIBL_AB_SURBL         Contains an URL listed in the AB SURBL blocklist
                            [URIs: avrainto.com]
 1.5 URIBL_WS_SURBL         Contains an URL listed in the WS SURBL blocklist
                            [URIs: avrainto.com]
 3.2 URIBL_OB_SURBL         Contains an URL listed in the OB SURBL blocklist
                            [URIs: avrainto.com]
 4.3 URIBL_SC_SURBL         Contains an URL listed in the SC SURBL blocklist
                            [URIs: avrainto.com]
  34 AWL                    AWL: From: address is in the auto white-list
 
-------------------- Fin de Rapport SpamAssassin ---------------------

Je le parse à l'aide de :



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
    open (INPUT, "$SPAMC -s 15000000 -R < $file |") or (print STDERR "Cannot process spamc on $File::Find::name\n", return);
    $line = <INPUT>; 
    if (($line =~ m/([\d\.]+)\/([\d\.]+)/o) && ($2 > 0) && ($1 >= $2)) {
    	$is_spamassassin_spam = 1;
    	$spamass_count++;
    	$spamass_avg_spam += $1;
    	$spamass_avg += $1;    		
    } else {
    	$spamass_avg_ham += $1;
    	$spamass_avg += $1;
    }
    my $spamass_score = $1;
    distribute($spamass_score);    
 
    while (($line = <INPUT>)) {   	
    	if (($line =~ m/---------------/o)) {
    		last;
    	}
    }
 
    while (($line = <INPUT>)) {    	
    	if (($line =~ m/([\d\.\-]+) ([^\s]+)\s+(.*)/o)) {    		
    		if (! defined $HEADER_LIST{$2}) {
    			$HEADER_LIST{$2}{"score"} = $1;
    			$HEADER_LIST{$2}{"desc"} = $3;
    		}    		    		
 
   			$HEADER_LIST{$2}{"occur"}++;
   			if ($is_spamassassin_spam) {
   				$HEADER_LIST{$2}{"occur-spam"}++;
   			}
 
   			$MATCH_RULES_LIST{$2}{"list"} = $MATCH_RULES_LIST{$2}{"list"}." ".$file;
   			if ($MATCH_RULES{$2}) {
   				$MATCH_RULES_LIST{$2}{"display"} = 1;	
   			}
 
   			$DISPLAY_DIFF{$file}{"rule"} = $DISPLAY_DIFF{$file}{"rule"}." ".$2;
   			if (!$is_spamassassin_spam) {   				
   				$MATCH_RULES_NOT_SPAM_SPAMASS{$2}{"list"} = $MATCH_RULES_NOT_SPAM_SPAMASS{$2}{"list"}." ".$file;
 
   				if ($MATCH_RULES_NOT_SPAM{$2}) {
	   				$MATCH_RULES_NOT_SPAM_SPAMASS{$2}{"display"} = 1;
   				}
   			}
 
   			my $match_file = get_file_for_rule($2);    			
   			$RULE_FILES{$match_file}++;    			
   			if (($MATCH_FILES{$match_file}) && (($MATCH_FILES_LIST{$match_file} =~ m/$file/) == 0)) {
   				$MATCH_FILES_LIST{$match_file} = $MATCH_FILES_LIST{$match_file}." ".$file;
   			}
 
    	}
    }
 
    close INPUT;


Le probleme est que mon tableau ressemble à
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
 Rule                         | Occur | Spam  | Score  | Description
=============================================================
AWL                           |      1|      1|      31| AWL: From: address is in the auto white-list
BAYES_00                      |      1|      1|    -2.6| BODY: L'algorithme Bayésien a évalué la probabilité de spam entre 0 et 1%
Fin                           |      1|      1|--------------------| de Rapport SpamAssassin ---------------------
HTML_80_90                    |      1|      1|     0.1| BODY: Le message est composé de 80 à 90% de HTML
HTML_MESSAGE                  |      1|      1|     0.0| BODY: HTML inclus dans le message
RCVD_IN_BL_SPAMCOP_NET        |      1|      1|     1.2| RBL: Relais listé dans http://spamcop.net/bl.shtml
RCVD_IN_XBL                   |      1|      1|     3.1| RBL: Received via a relay in Spamhaus XBL
URIBL_AB_SURBL                |      1|      1|     0.4| Contains an URL listed in the AB SURBL blocklist
URIBL_OB_SURBL                |      1|      1|     3.2| Contains an URL listed in the OB SURBL blocklist
URIBL_SC_SURBL                |      1|      1|     4.3| Contains an URL listed in the SC SURBL blocklist
URIBL_WS_SURBL                |      1|      1|     1.5| Contains an URL listed in the WS SURBL blocklist
listed                        |      1|      1|82.91.14.39| in sbl-xbl.spamhaus.org]
points,                       |      1|      1|    42.4| 5.0 requis)
see                           |      1|      1|       -| <http://www.spamcop.net/bl.shtml?82.91.14.39>]

Autrement dit, je n'arrive pas à virer la ligne Fin | 1| 1|--------------------| de Rapport SpamAssassin

il me prend ça comme un filtre !!!! Une idée de comment virer ce truc ??