/[nn]/find2.pl
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /find2.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1.1.1 - (show annotations) (vendor branch)
Fri Jan 25 18:36:33 2002 UTC (22 years, 2 months ago) by dpavlin
Branch: dbp, MAIN
CVS Tags: r0, HEAD
Changes since 1.1: +0 -0 lines
File MIME type: text/plain
initial import

1 #!/usr/bin/perl -w
2
3 use DBI;
4
5 my $sadrzaj=0;
6 my $nr=0;
7 my $naslov="";
8
9 my $br; ## broj NN
10 my $god; ## godina NN
11 my $aname; ## ancor name na originalnim stranicama
12
13 my $nn_dir="."; # dir u kojem su wget-ani fileovi
14
15 my $dbh = DBI->connect("DBI:Pg:dbname=nn","","") || die $DBI::errstr;
16
17 $dbh->do("delete from nn") || die $dbh->errstr();
18
19 opendir(DIR,$nn_dir) || warn "opendir: $!";
20 my @files = grep { /^CijeliBrojS/ && -f "$nn_dir/$_" } readdir(DIR);
21 closedir(DIR);
22
23 foreach my $file (@files) {
24 open(IN,$file) || die "can't open $file: $!";
25
26 if ($file=~m/god=(\d+)\&br=(\d+)/) {
27 ($br,$god) = ($2,$1);
28 print "$file -- $2 -- $1\n";
29 }
30
31 while(<IN>) {
32 chomp;
33 s/\015//g; # kill cr
34 tr/šðžèæŠÐŽÈÆ/¹ð¾èæ©Ð®ÈÆ/; # 1250 -> iso8859-2
35
36 $sadrzaj++ if (m,<div class=sadrzaj>,);
37
38 if ($sadrzaj) {
39 if (s/<a href="#([^"])+">\s*(\d+)\.\s*<[^>]+>//i) {
40 ($aname,$nr) = ($1,$2);
41 }
42 $naslov.=$_;
43 }
44
45 if ($sadrzaj && m,</div>,) {
46 $sadrzaj--;
47 $naslov=~s/\s+/ /g;
48 $naslov=~s/<[^>]+>//g;
49 $naslov=~s/^\s+//g;
50 $naslov=~s/\s+$//g;
51 print "$god $br $nr: $naslov\n";
52 $naslov_czs = lc($naslov);
53 $naslov_czs =~ tr/¹©ðÐèÈæƾ®/sSdDcCcCzZ/;
54 $naslov_czs =~ tr/a-zA-Z/ /cs; # non a-z -> space
55 $dbh->do("insert into nn (br,god,nr,aname,title,title_czs) values ($br,$god,$nr,'$aname','$naslov','$naslov_czs')") || die $dbh->errstr();
56 $naslov="";
57 $nr=0;
58 }
59 }
60
61 close(IN);
62 }
63
64 $dbh->do("vacuum") || die $dbh->errstr();

  ViewVC Help
Powered by ViewVC 1.1.26