Changeset 1473
- Timestamp:
- Sep 23, 2013, 10:15:36 PM (10 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/postprocessors/metacritic
r1419 r1473 5 5 6 6 my $progname = "metacritic"; 7 my $version = "1. 0";7 my $version = "1.1"; 8 8 9 9 use XMLTV; … … 119 119 120 120 $title =~ s/ /-/g; 121 $title =~ s/ ://g;121 $title =~ s/[:']//g; 122 122 $title =~ s/ \& / /g; 123 123 $title = lc($title); … … 266 266 else 267 267 { 268 269 268 my $tree = HTML::TreeBuilder->new_from_content($html); 270 269 271 270 # verify that it's the correct show! 272 my $date; 273 my $block = $tree->look_down('_tag' => 'li', 'class' => 'summary_detail release_data'); 274 if ($block and $block->as_text() =~ /, ([\d]{4})$/) 271 if ($tree->look_down('_tag' => 'div', 'class' => 'error_msg')) 275 272 { 276 $date = $1; 277 } 278 if ($prog_year != $date) 279 { 280 &Shepherd::Common::log(" skipping show, is year $date, should be $prog_year") if ($opt->{debug}) 273 &Shepherd::Common::log(" 404 Not found") if ($opt->{debug}); 281 274 } 282 275 else 283 276 { 284 if ($opt->{debug}) 285 { 286 &Shepherd::Common::log(" match: augmenting data"); 277 my $date; 278 my $block = $tree->look_down('_tag' => 'li', 'class' => 'summary_detail release_data'); 279 if ($block and $block->as_text() =~ /, ([\d]{4})\b/) 280 { 281 $date = $1; 282 } 283 if (!$date) 284 { 285 &Shepherd::Common::log(" skipping show, could not establish date" . $block->as_HTML()) if ($opt->{debug}); 286 } 287 elsif ($prog_year != $date) 288 { 289 &Shepherd::Common::log(" skipping show, is year $date, should be $prog_year") if ($opt->{debug}) 287 290 } 288 291 else 289 292 { 290 &Shepherd::Common::log("- $movie_title: found data"); 291 } 292 293 294 # 295 # augment data 296 # 297 298 # Description 299 300 my $prog_desc; 301 if (!defined $prog->{desc} or !defined $prog->{desc}->[0] or !defined $prog->{desc}->[0]->[0]) 302 { 303 $prog_desc = ''; 304 } 305 else 306 { 307 $prog_desc = $prog->{desc}->[0]->[0]; 308 } 309 310 my $block = $tree->look_down('_tag' => 'div', 'class' => 'summary_detail product_summary'); 311 if ($block) 312 { 313 my $desc = $block->as_text(); 314 $desc =~ s/^Summary:\s*//; 315 316 &Shepherd::Common::log(" Metacritic desc: $desc") if ($opt->{debug}); 317 318 if ($desc and length($desc) > 20 and length($prog_desc) < 20) 319 { 320 $prog_desc = $desc; 321 } 322 } 323 324 # Ratings 325 326 my $critic_rating; 327 my $user_rating; 328 329 $block = $tree->look_down('_tag' => 'div', 'class' => 'metascore_wrap feature_metascore'); 330 if ($block) 331 { 332 my $span = $block->look_down('_tag' => 'span', 'class' => 'score_value'); 333 if ($span) 334 { 335 $critic_rating = $span->as_text(); 336 } 337 } 338 339 $block = $tree->look_down('_tag' => 'div', 'class' => 'userscore_wrap feature_userscore'); 340 if ($block) 341 { 342 my $span = $block->look_down('_tag' => 'span', 'class' => 'score_value'); 343 if ($span) 344 { 345 $user_rating = $span->as_text(); 346 } 347 } 348 349 if ($critic_rating) 350 { 351 $prog->{'star-rating'} = [ ] unless (ref $prog->{'star-rating'}); 352 &Shepherd::Common::log(" Metascore: $critic_rating / 100"); 353 push @{$prog->{'star-rating'}}, [ "$critic_rating/100", "Metacritic Metascore", undef ]; 354 } 355 if ($user_rating) 356 { 357 $prog->{'star-rating'} = [ ] unless (ref $prog->{'star-rating'}); 358 359 &Shepherd::Common::log(" User Score: $user_rating / 10"); 360 361 push @{$prog->{'star-rating'}}, [ "$user_rating/10", "Metacritic User Score", undef ]; 293 if ($opt->{debug}) 294 { 295 &Shepherd::Common::log(" match: augmenting data"); 296 } 297 else 298 { 299 &Shepherd::Common::log("- $movie_title: found data"); 300 } 301 302 303 # 304 # augment data 305 # 306 307 # Description 308 309 my $prog_desc; 310 if (!defined $prog->{desc} or !defined $prog->{desc}->[0] or !defined $prog->{desc}->[0]->[0]) 311 { 312 $prog_desc = ''; 313 } 314 else 315 { 316 $prog_desc = $prog->{desc}->[0]->[0]; 317 } 318 319 my $block = $tree->look_down('_tag' => 'div', 'class' => 'summary_detail product_summary'); 320 if ($block) 321 { 322 my $desc = $block->as_text(); 323 $desc =~ s/^Summary:\s*//; 324 325 &Shepherd::Common::log(" Metacritic desc: $desc") if ($opt->{debug}); 326 327 if ($desc and length($desc) > 20 and length($prog_desc) < 20) 328 { 329 $prog_desc = $desc; 330 } 331 } 332 333 # Ratings 334 335 my $critic_rating; 336 my $user_rating; 337 338 $block = $tree->look_down('_tag' => 'div', 'class' => 'metascore_wrap feature_metascore'); 339 if ($block) 340 { 341 my $span = $block->look_down('_tag' => 'span', 'class' => 'score_value'); 342 if ($span) 343 { 344 $critic_rating = $span->as_text(); 345 } 346 } 347 348 $block = $tree->look_down('_tag' => 'div', 'class' => 'userscore_wrap feature_userscore'); 349 if ($block) 350 { 351 my $span = $block->look_down('_tag' => 'span', 'class' => 'score_value'); 352 if ($span) 353 { 354 $user_rating = $span->as_text(); 355 } 356 } 357 358 if ($critic_rating) 359 { 360 $prog->{'star-rating'} = [ ] unless (ref $prog->{'star-rating'}); 361 &Shepherd::Common::log(" Metascore: $critic_rating / 100"); 362 push @{$prog->{'star-rating'}}, [ "$critic_rating/100", "Metacritic Metascore", undef ]; 363 } 364 if ($user_rating) 365 { 366 $prog->{'star-rating'} = [ ] unless (ref $prog->{'star-rating'}); 367 368 &Shepherd::Common::log(" User Score: $user_rating / 10"); 369 370 push @{$prog->{'star-rating'}}, [ "$user_rating/10", "Metacritic User Score", undef ]; 371 } 362 372 } 363 373 -
trunk/status
r1472 r1473 16 16 reconciler reconciler_mk2 0.49 17 17 postprocessor imdb_augment_data 1.03 18 postprocessor metacritic 1. 018 postprocessor metacritic 1.1 19 19 postprocessor augment_timezone 0.30 20 20 postprocessor add_channel_icons 0.2
Note: See TracChangeset
for help on using the changeset viewer.