我试图使用Perl的Net::Blogger自动向blogger发帖,但它始终返回false,而不发帖。代码的主要部分如下所示:
use Net::Blogger;
my $blogger = Net::Blogger->new({
debug => 1,
appkey => '0123456789ABCDEF', # doesn't matter?
blogid => $blogid,
username => $username,
password => $password,
});
my $result = $blogger->newPost({
postbody => \'<p>This is text</p><hr/><p><strong>Whee!</strong></p>',
publish => 1,
});
use Data::Dumper;
print Dumper($result);当然,$result是0,在查看博客时,还没有发布任何内容。启用调试时遇到的错误是:
Element '' can't be allowed in valid XML message.
Died. at /Library/Perl/5.10.1/SOAP/Lite.pm line 1410.我做错了什么?
如果您可以建议一种替代Net::Blogger的方法,那就好了。
更新:如果我不启用调试,在尝试发布时它会挂起很长一段时间。
发布于 2010-06-01 11:06:48
我可以理解您的挫折感,我不喜欢使用具有诱惑力的CPAN模块(也就是说,它看起来像痒的好擦痕),但最终没有用。然而,Net::Blogger上一次更新是在2006年,所以我认为如果它仍然按原来的计划工作,那将是不可思议的,因为博客已经发展了多年。
根据daxim的rec,我快速尝试通过CPAN.pm在OS上安装Atompub,但由于对Perl::批评家的严格依赖而失败,而后者不会安装。我想我知道如何解决这个问题,但我需要一个比这更好的理由去努力。
我在Net::Blogger perldoc中看到了这条注释,如果没有其他方法,它可以提示其他模块尝试,对于那些不想击败Atompub的人来说:
Atom API 2004年1月,博主宣布支持Atom API。 在撰写本文时(版本为0.87),该包不支持Atom API。如果您需要执行Atom-ish的操作,最好的选择是使用XML::Atom包。
发布于 2010-05-31 11:40:50
正如您所要求的那样:在所有不同的博客API之后,出现了一个RFC 5023形式的标准。
原子酒吧工作得很好。
发布于 2012-02-21 21:20:52
我今天在Net::Logger上做了一些工作,并设法将一个条目发布到Blogger中,问题是只有身体才能被设置(没有像虚拟用户告诉的那样支持Atom )。
请看一下我的Perl发布到Blogger blue条目以获得一些帮助。
https://stackoverflow.com/questions/2942998
复制相似问题