—#!/usr/local/bin/perl
use
v5.10.1;
use
strict;
my
@accepts_opts
=
qw(
:compile :merge data-dir force test :season
)
;
my
@accepts_args
= (
{
name
=>
'GAME_IDS'
,
description
=>
'Our 9-digit game ids that are present in the file system'
,
}
);
my
$what_it_does
=
'Normalize the normalized NHL report, providing default values and testing dependent values'
;
my
$opts
= gopts(
$what_it_does
, \
@accepts_opts
, \
@accepts_args
);
my
$hockeydb
= Sport::Analytics::NHL->new(
$opts
);
my
$query
= {};
if
(
$opts
->{start_season} ||
$opts
->{stop_season}) {
$query
->{season} = {
$opts
->{start_season} ? (
'$gte'
=>
$opts
->{start_season}) : (),
$opts
->{stop_season} ? (
'$lte'
=>
$opts
->{stop_season}) : (),
}
}
my
@game_ids
=
$hockeydb
->{db}{dbh}->get_collection(
'schedule'
)->find(
$query
, {
_id
=> 0,
game_id
=> 1}
)->all();
$hockeydb
->normalize(
$opts
,
map
(
$_
->{game_id},
@game_ids
));
=head1 NAME
normalize-schedule - normalize (recompile if necessary) the merged NHL boxscore referenced in schedule.
=head1 SYNOPSIS
Normalizes the merged NHL reports into a Storable file (normalized.storable). Also produces a JSON for convenience (normalized.json)
Usage: normalize-schedule [Options] Arguments
Options:
-h|--help print this message and exit
-V|--version print version and exit
-v|--verbose produce verbose output to STDERR
-d|--debug produce debug output to STDERR
--no-compile Do not compile file even if storable is absent
--recompile Compile file even if storable is present
--no-merge Do not merge files even if storable is absent
--remerge Merge files even if storable is present
-E|--data-dir DIR Data directory root (default /misc/nhl)
-f|--force override/overwrite existing data
--test Test the validity of the files (use with caution)
-s|--start-season SEASON Start at season SEASON (default 2018)
-S|--stop-season SEASON Stop at season SEASON (default 2018)
-T|--stage STAGE Scrape stage STAGE (2: REGULAR, 3: PLAYOFF, Arguments:
GAME_IDS Our 9-digit game ids that are present in the file system
=cut
=head1 AUTHOR
More Hockey Stats, C<< <contact at morehockeystats.com> >>
=head1 BUGS
Please report any bugs or feature requests to C<contact at morehockeystats.com>, or through
the web interface at L<https://rt.cpan.org/NoAuth/ReportBug.html?Queue=Sport::Analytics::NHL>. I will be notified, and then you'll
automatically be notified of progress on your bug as I make changes.
=head1 SUPPORT
You can find documentation for this module with the perldoc command.
perldoc Sport::Analytics::NHL
You can also look for information at:
=over 4
=item * RT: CPAN's request tracker (report bugs here)
=item * AnnoCPAN: Annotated CPAN documentation
=item * CPAN Ratings
=item * Search CPAN
=back
=head1 ACKNOWLEDGEMENTS
=head1 LICENSE AND COPYRIGHT
Copyright 2018 More Hockey Stats.
This program is released under the following license: gnu
=cut
1;