指定したキーワードでGoogleNewsを購読するプラグインを作ってみた

ここのところしつこくplaggerを弄っていたのだけど
ようやく安定して運用できるようになってきました。
長い道のりだった。
仕組みも多少わかってきたのでGoogle News(RSS)用の
Subscriptionプラグインを書いてみた。

package Plagger::Plugin::Subscription::GoogleNews;
use strict;
use warnings; use base qw (Plagger::Plugin);
our $VERSION = 0.01;

use URI::Escape qw(uri_escape uri_escape_utf8);

sub register {
    my ($self, $context) = @_;

    $context->register_hook(
        $self,
        'subscription.load' => $self->can('load'),
    );
}

sub load {
  my ($self, $context) = @_;

  my $feeds = $self->conf->{feed} or return;
     $feeds = [ $feeds ] unless ref $feeds;

  for my $config (@$feeds) {
    my $feed = Plagger::Feed->new;
    $feed->title($config->{query}." GoogleNews");
    $feed->url("http://news.google.com/news?hl=ja&ned=us&ie=UTF-8&oe=UTF-8&output=atom&q=".uri_escape_utf8($config->{query}));

    $context->subscription->add($feed);
  }
}

1;
  - module: Subscription::GoogleNews
    config:
      feed:
        - query: 国境 侵入

queryは複数指定可