gametrailers.pl

# upgrades http://www.gametrailers.com/rssgenerate.php?game1id=6364&orderby=newest&limit=20
# http://www.gametrailers.com/rssgenerate.php?s1=&favplats[pc]=pc&vidformat[flv]=on&type[review]=on&embed=on&quality[hd]=on&agegate[no]=on&orderby=newest&limit=20
use Web::Scraper;
sub init {
    my $self = shift;
    $self->{domain} = "gametrailers.com";
    $self->{handle} = '/player/\d+.html';
}
 
sub needs_content { 1 }
 
sub find {
    my ($self, $args) = @_;
 
    my $uri = URI->new($args->{url});
 
    my($mid) = $uri->path =~ m!/(\d+)\.html! or return;
 
    my $scraper = scraper {
        process 'div.movie_300_row_playing img',thumbnail => '@src';
    }->scrape($args->{content}, $args->{url});
 
    my $enclosure = Plagger::Enclosure->new;
    $enclosure->url("http://www.gametrailers.com/flash/gt6player224n.swf?mid=$mid");
    $enclosure->width(480);
    $enclosure->height(392);
    $enclosure->type("application/x-shockwave-flash");    
    $enclosure->thumbnail({ url => $scraper->{thumbnail} });
    return $enclosure;
}
 
sub upgrade {
    my($self, $args) = @_;
    my $enclosure = $args->{enclosure};
    return unless $enclosure->type eq 'application/x-shockwave-flash';
 
    my($mid) = $args->{entry}->link =~ m!/(\d+)\.html! or return;
    if ($args->{entry}->title =~ /\sHD$/) {
        $enclosure->url("http://www.gametrailers.com/flash/gt6playerhd202k.swf?mid=$mid");
        $enclosure->width(960);
        $enclosure->height(572);
    }
}
 

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2008年12月20日 21:33
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。