awsxomプラグインを9月24日版に差し替え+少しいじってみたり

awsxom プラグインの新しいのが出ています。今回から foot.flavour でも使えるようになったので、サイドバーの Recommends にも awsxom プラグインを使うことにしました。

ところで、バージョンアップするときに気づいたのですが、awsxom では DVD の監督や出演者が表示できません(気づくの遅っ)。私は映画を選ぶときに監督や出演者(とくに監督)を重視する人なので、awsxom プラグインを少しいじってみることにしました。

ローカルとこのブログでテストした限りでは何とか動いているようなので、変更した箇所を書いておきます(無謀とも言う)。ただし、私は Perl には詳しくない(ていうか、全く知らないと言ってもいいくらい)ので、思いっきり間違っている可能性も(大いに)あります。

Amazon から取得するデータのタイプを「type=lite」から「type=heavy」に変更

73 行目を

    my $url = "http://xml.amazon.co.jp/...&type=lite=...

から

    my $url = "http://xml.amazon.co.jp/...&type=heavy=...

に変更。

150 行目あたりに、以下の行を追加

    # 監督・出演者の解析
    $detail{"Director"} = parseAuthor($buf, "Directors", "Director");
    $detail{"Actor"} = parseActor($buf, "Starring", "Actor");
    # DVDの場合、AuthorにDirectorと/またはActorを入れておく
    if ($detail{"Catalog"} eq "DVD") {
        if ($detail{"Director"} ne "" && $detail{"Actor"} ne "") {
        $detail{"Author"} = $detail{"Director"} . " / " . $detail{"Actor"};
        } elsif ($detail{"Director"} ne "" && $detail{"Actor"} eq "") {
        $detail{"Author"} = $detail{"Director"};
        } elsif ($detail{"Director"} eq "" && $detail{"Actor"} ne "") {
        $detail{"Author"} = $detail{"Actor"};
        }
    }

「# デバッグ用」の前(オリジナルの 177 行目)あたりに、以下の行を追加

# ---------------------------------------------------------------------
# Actor 部分の解析
sub parseActor {
    my ($buf, $parent, $child) = @_;
    my @actors;
    my $actor;
    # Actorの数
    my $actor_num = 3;

    if ($buf =~ /<$parent>(.*)?<\/$parent>/s) {
        my $act = $1;
        @actors = ($act =~ /<$child>([^<]*)<\/$child>/gmi);
    }
    if ($actors[0] eq $actors[1]) {
        shift @actors;
    }
    if (@actors >= $actor_num) {
        splice(@actors,$actor_num);
    $actor = join ", ", @actors;
    } elsif (@actors > 1 && @actors < $actor_num) {
        $actor = join ", ", @actors;
    } else {
        $actor = $actors[0];
    }
    return $actor;
}

新たに利用可能になる(?)変数

テンプレートの中で、以下の変数が使用できるようになる・・・かもしれません。

  • $Director: 監督の名前
  • $Actor: 俳優の名前(最大3人まで)
  • $Author: 「監督 / 俳優」

使用例

ハウルの動く城 [DVD] ハウルの動く城 [DVD]

ブエナ・ビスタ・ホーム・エンターテイメント

注意

  • 動作無保証。
  • にーやんが勝手に改造したものであり、作者の fukazawa さんとは無関係です。
Edit this entry...

wikieditish message: Ready to edit this entry.
















A quick preview will be rendered here when you click "Preview" button.