POV-Ray : Newsgroups : povray.general : Signatures : Re: Signatures Server Time
9 Mar 2025 17:22:27 EDT (-0400)
  Re: Signatures  
From: kurtz le pirate
Date: 1 Mar 2025 11:54:04
Message: <67c33bac@news.povray.org>
On 27/02/2025 18:24, Bald Eagle wrote:
> What is probably a long while back now, I found it interesting to try and
> collect all of the different short-code signature scenes attached to forum
> members' posts, and render them to see what they looked like.
> 
> A somewhat recent conversation with a Federal agent, and, recalling some posts
> by Chris Cason in some older threads, made me think that there's got to be a way
> to scan the entire newsgroup and collect all of the unique signature scenes.
> 
> Maybe if someone has some sort of Javascript foo, Google foo, or some kind of
> network software / scripting that could do this, it would be a fun project to
> render all of the signatures and somehow attach the poster's forum handle, and
> possibly the message number.
> 
> Any ideas?
> 
> - BW
> 

Nice project :)

I think that with a few lines of Perl(*) code, it's easy to retrieve all 
the groups on a server and, for each group, the messages and for each 
message extract le SDL in the signing.


The code principle could be (untested but with some comments) :
——— CODE START
—————————————————————————————————————————————————————————

#!/usr/local/bin/perl -w
#!/usr/bin/perl

use strict;
use warnings;

# https://perldoc.perl.org/Net::NNTP
use Net::NNTP;
use constant NNTP_DEBUG => 0; # 0/1

# connection to the nntp server
my $NNTPServer = Net::NNTP->new("news.povray.org",'Debug' => NNTP_DEBUG)
	or die;

# retrieve newsgroup list
my $GroupsList = $NNTPServer->list()
	or die "Couldn't fetch group list\n";

# for each group in the list
foreach my $ThisGroup (keys %$GroupsList) {
	# informations of this newsgroup
	my ($NbArticles, $first, $last) = $NNTPServer->group($ThisGroup)
	    or die "Can't select $ThisGroup\n";

	# for each message in the group
	foreach my $artnum ($first..$last) {
		my $art = $NNTPServer->article($artnum) or next;
		print "===== article $artnum =====\n";
		print @$art;
		}
     }

# close and quit
print "\n--- close and quit ---\n";
$NNTPServer->quit;

——— CODE END (35 lines)
————————————————————————————————————————————————




Okay. Now comes the hard part: recognizing the signature AND recognizing 
that it contains SDL POV code.

Perl(*) contains powerful recognition operators (regex) but (I haven't 
thought much about this) I can't see what would be significant for 
signature and SDL code.



(*) : Perl, Why Perl ? because I know this language well, because it's 
present by default on *nix distributions, because regexes can be 
manipulated easily. But nothing prevents you from adapting it to another 
language, of course.





-- 
kurtz le pirate
compagnie de la banquise


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.