Two examples I can give is Cliff and "Burled Frau".
Killfiling just them accomplishes not so much, because other people
follow up and I see all that crap. Killfiling crossposted newsgroups
is somewhat more effective, but not 100% effective.
I wrote a perl script to address it. It scans selected newsgroups
newsgroup, finds all Message-IDs posted by designated people (listed
in a separate file), and generates a slrn scorefile that killfiles
everything that has those message-IDs in References. So it kills not
only their posts, but all followups to such posts.
The generated scorefile is meant to be included from your main
Scorefile by means of "include" directive.
I am including this script below. I expect to improve it as time goes
on.
######################################################################
#!/usr/bin/perl
#
# Script to killfile trolls and all followups to their posts
#
# Copyright (C) Igor Chudov, 2010
# Released under GNU Public License v3
#
my $usage = "USAGE: $0 --server news.server.com --user username --password pAssWorD [--style (slrn|ids)]";
use strict;
use warnings;
use Getopt::Long;
use News::NNTPClient;
my $server = undef;
my $username = undef;
my $password = undef;
my $trollfile = "$ENV{HOME}/configs/general/usenet-trolls.txt";
my $style = 'slrn';
my $newsgroups = 'rec.crafts.metalworking,alt.machines.cnc';
my $max = 1_000;
GetOptions(
"server=s" => \$server,
"username=s" => \$username,
"password=s" => \$password,
"trollfile=s" => \$trollfile,
"style=s" => \$style,
"max=i" => \$max,
"newsgroups=s" => \$newsgroups,
);
die $usage unless $server && $username && $password;
die $usage unless { slrn => 1, ids => 1 }->{$style};
die "Cannot find file $trollfile" unless -f $trollfile;
my $nntp = new News::NNTPClient( $server )
|| die "Cannot connect to server";
$nntp->authinfo( $username, $password ) || die "Cannot logon to $server";
my $trolls = [];
open( TROLLS, $trollfile ) || die "Cannot open $trollfile: $!.\n";
while( <TROLLS> ) {
next if /^\s*\#/;
next if /^\s*$/;
chomp;
s/\s*\#.*$//;
push @$trolls, $_;
}
close( TROLLS );
my @newsgroups = split( /,/, $newsgroups );
foreach my $ng (@newsgroups) {
my ($start, $end) = $nntp->group( $ng );
$start = $end-$max if $end-$max > $start;
next unless $end > $start;
print STDERR "Analyzing $ng: $start=>$end...\n";
my @fields = qw(numb subj from date mesg refr char line xref);
foreach my $xover ( $nntp->xover( $start, $end ) ) {
my %fields = ();
@fields{@fields} = split /\t/, $xover;
#print "From = $fields{from}, mesg = $fields{mesg}.\n";
my $from = $fields{from};
my $mesg = $fields{mesg};
my $matches = undef;
foreach my $troll (@$trolls) {
my $m = quotemeta( $troll );
if ( $from =~ /$m/ ) {
print STDERR "Message from troll $troll ($from) => $mesg\n";
$matches = 1;
last;
}
}
if ( $matches ) {
$mesg =~ s/^<//;
$mesg =~ s/>$//;
if ( $style eq 'slrn' ) {
print "
[*]
Score: -666
References: $mesg
";
}
}
}
}
exit 0;
"Ignoramus8009" <ignora...@NOSPAM.8009.invalid> wrote in message
news:naqdnQEHz8qoLgjW...@giganews.com...
That's pretty good. I'm writing a script that will crosspost anything you
post to the annoying newsgroups. Seems like it would be more beneficial to
write some kind of script that keeps the libtards in RCM from posting
off-topic to other groups.
The script does something more precise, and better, without any manual
killfiling efforts.
i
>There are a few posters, who I personally find extremely annoying
>because they never say anything that I am interested in, and yet they
>have great skills at stirring the pot among one or several newsgroups,
>so then discussions drag in more and more people.
>
>Two examples I can give is Cliff and "Burled Frau".
>
>Killfiling just them accomplishes not so much, because other people
>follow up and I see all that crap. Killfiling crossposted newsgroups
>is somewhat more effective, but not 100% effective.
>
>I wrote a perl script to address it. It scans selected newsgroups
>newsgroup, finds all Message-IDs posted by designated people (listed
>in a separate file), and generates a slrn scorefile that killfiles
>everything that has those message-IDs in References. So it kills not
>only their posts, but all followups to such posts.
>
>The generated scorefile is meant to be included from your main
>Scorefile by means of "include" directive.
>
>I am including this script below. I expect to improve it as time goes
>on.
>
Good one - thanks. I have the same problem. I guess I'll have to give
up on Agent and get slrn. Will your script work in the Windoze
compiled version?
Joe
It will work with Activeperl, you need to make sure that you nave
News::NNTPClient module installed.
i
<snip>
>Good one - thanks. I have the same problem. I guess I'll have to give
>up on Agent and get slrn. Will your script work in the Windoze
>compiled version?
>
>Joe
If you are using Agent, this filter does pretty good:
Author: {too_many_tools|Compact
Adolescent|Cliff|LibLoo|Burled|Just a Guy} and not Subject:
{^re\:}
Set the "Kill Action" to Ignore thread. Keep the old
messages for a couple weeks or more before auto-purging. You
have to keep at least one message for ignore thread to work.
After a couple weeks or so they die away, usually...
It will mark any thread as ignore that these bozo's start.
Make another filter to mark message as read, give it a lower
score than the previous filter:
Author: {too_many_tools|basil karlo|jon_banquer|Compact
Adolescent|Cliff|Lib Loo|freedom_guy|mansd8|burled}
Add/subtract the names in these to suit your fancy...
--
Leon Fisk
Grand Rapids MI/Zone 5b
Remove no.spam for email