17 |
use Getopt::Std; |
use Getopt::Std; |
18 |
use Lingua::Spelling::Alternative; |
use Lingua::Spelling::Alternative; |
19 |
require Unicode::Map8; |
require Unicode::Map8; |
20 |
|
use GDBM_File; |
21 |
|
|
22 |
my $sadrzaj=0; |
my $sadrzaj=0; |
23 |
my $nr=0; |
my $nr=0; |
30 |
my $nn_dir="../"; # dir u kojem su wget-ani fileovi |
my $nn_dir="../"; # dir u kojem su wget-ani fileovi |
31 |
my $url="http://www.nn.hr/CijeliBrojS.asp?god=%d&br=%s&mid=%s#%d"; |
my $url="http://www.nn.hr/CijeliBrojS.asp?god=%d&br=%s&mid=%s#%d"; |
32 |
|
|
33 |
|
my $gdbm_file="./brzakona.gdbm"; |
34 |
|
|
35 |
my %opts; |
my %opts; |
36 |
getopts("vqdl:", \%opts); |
getopts("vqdl:", \%opts); |
37 |
|
|
45 |
|
|
46 |
my $l2_map = Unicode::Map8->new("ISO-8859-2") || die; |
my $l2_map = Unicode::Map8->new("ISO-8859-2") || die; |
47 |
|
|
48 |
|
my %br_zakona; |
49 |
|
tie %br_zakona, 'GDBM_File', $gdbm_file, &GDBM_NEWDB, 0640; |
50 |
|
|
51 |
|
#-------------------------------------------------------------------- |
52 |
|
|
53 |
|
sub save_br_zak { |
54 |
|
my $god = shift || return; |
55 |
|
my $br = shift || return; |
56 |
|
my $zak_u_broju = shift || return; |
57 |
|
print STDERR "[$god/$br: $zak_u_broju zakona]\n" if (! $opts{q}); |
58 |
|
$br_zakona{sprintf("%04d/%02d",$god,$br)} = $zak_u_broju; |
59 |
|
} |
60 |
|
|
61 |
#-------------------------------------------------------------------- |
#-------------------------------------------------------------------- |
62 |
|
|
63 |
sub dump_to_swish { |
sub dump_to_swish { |
64 |
my $xml = shift @_; |
my $xml = shift @_; |
65 |
my ($god,$br,$nr,$aname) = @_; |
my ($god,$br,$nr,$aname) = @_; |
86 |
} |
} |
87 |
closedir(DIR); |
closedir(DIR); |
88 |
|
|
89 |
foreach my $file (@files) { |
foreach my $file (sort @files) { |
90 |
open(IN,"$nn_dir/$file") || die "can't open '$nn_dir/$file': $!"; |
open(IN,"$nn_dir/$file") || die "can't open '$nn_dir/$file': $!"; |
91 |
|
|
92 |
if ($file=~m/god=(\d+)\&br=(\d+)/) { |
if ($file=~m/god=(\d+)\&br=(\d+)/) { |
93 |
|
save_br_zak($god,$br,$zak_u_broju); |
94 |
|
print STDERR "$file " if (! $opts{q}); |
95 |
($br,$god) = ($2,$1); |
($br,$god) = ($2,$1); |
|
if (! $opts{q}) { |
|
|
print STDERR " [$zak_u_broju zakona]\n" if ($zak_u_broju); |
|
|
print STDERR "$file -- $2 -- $1"; |
|
|
} |
|
96 |
$brojeva++; |
$brojeva++; |
97 |
$zak_u_broju = 0; |
$zak_u_broju = 0; |
98 |
} |
} |
156 |
close(IN); |
close(IN); |
157 |
} |
} |
158 |
|
|
159 |
|
save_br_zak($god,$br,$zak_u_broju); |
160 |
print STDERR "Ukupno $brojeva brojeva NN, sa $zakona zakona...\n" if (! $opts{q}); |
print STDERR "Ukupno $brojeva brojeva NN, sa $zakona zakona...\n" if (! $opts{q}); |
161 |
|
|
162 |
|
untie %br_zakona; |