Hatena::Grouplapis25

とあるlapis25の関係不全 このページをアンテナに追加 RSSフィード

2007-05-18

[]Filter::Stopwords Filter::Stopwords - とあるlapis25の関係不全 を含むブックマーク はてなブックマーク - Filter::Stopwords - とあるlapis25の関係不全 Filter::Stopwords - とあるlapis25の関係不全 のブックマークコメント

ひとまず動いてる.なんとなくわかった

package Plagger::Plugin::Filter::Stopwords;
use strict;
use warnings;
use base qw( Plagger::Plugin );

our $VERSION = '0.01';

sub register {
    my($self, $context) = @_;
    $context->register_hook(
        $self,
        'update.feed.fixup' => \&filter,
    );
}

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

    $context->log(debug => "Stop words is " . join ", ", @{ $self->conf->{words} } );

    $self->conf->{words} or $context->error( "words is required" );

    for my $entry ( $args->{feed}->entries ) {
        foreach my $word ( @{ $self->conf->{words} } ) {
            if ( $entry->body =~ /$word/ ) {
                $context->log(info => "Delete entry in stop word '$word' in " .$entry->title );
                $args->{feed}->delete_entry($entry);
                next;
            }
        }
    }
} 

1;
トラックバック - http://lapis25.g.hatena.ne.jp/lapis25/20070518