BinGOs pointed out WWW::UsePerl::Journal and kindly pasted the code he uses to drive it. I've hacked it a little to embed the article title into a header block on the article. Since I'm writing these offline, I figure the title should be associated with the article for posterity.
Here's my hacked version of BinGOs' posting script:
#!/usr/bin/env perl use warnings; use strict; use WWW::UsePerl::Journal; my $user = 'rcaputo'; my $pass = '********'; # Headers. my $title; my $comments = 1; while (<>) { chomp; last if /^\s*$/; unless (/^\s*([^:]+?)\s*:\s*(\S.*?)\s*$/) { die "Unknown header line ($_)\n"; } my ($header, $value) = (lc($1), $2); # Avoid the lulz. $value =~ s/\Q$pass/********/g; if ($header eq "title") { $title = $value; next; } if ($header eq "comments") { if (lc($value) eq "yes") { $comments = 1; } elsif (lc($value) eq "no") { $comments = 0; } else { die "Comments header may only be yes or no.\n"; } } } # Body HTML. my $text = ''; while (<>) { # Only one per line. if (/^\s*\s*$/) { my $code = `/bin/cat $1`; $code =~ s/\n+$//; # Break up the ecode tags so this script can # present itself. $_ = "<" . "ecode>\n$code\n<" . "/ecode>"; } $text .= $_; } # Avoid the lulz. $text =~ s/\Q$pass/********/g; die "Article needs a Title header.\n" unless $title; die "Article needs body HTML.\n" unless $text; # Post. my $journal = WWW::UsePerl::Journal->new($user); my $post = $journal->login($pass); unless ( $post->postentry( title => $title, text => $text, topic => 34, # user journal comments => $comments, # allow comments? type => 2, # ??? promote => 'publish', # ??? ) ) { die "Failure.\n"; } print "Success.\n"; exit;
Here's the source of this article:
Title: Test post, please ignore.BinGOs pointed out WWW::UsePerl::Journal and kindly pasted the code he uses to drive it. I've hacked it a little to embed the article title into a header block on the article. Since I'm writing these offline, I figure the title should be associated with the article for posterity.
Here's my hacked version of BinGOs' posting script:
Here's the source of this article:
Thanks for reading anyway.
Thanks for reading anyway.