/[pgestraier]/trunk/data/indexer.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

Annotation of /trunk/data/indexer.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 83 - (hide annotations)
Wed Jan 17 22:30:14 2007 UTC (17 years, 4 months ago) by dpavlin
File MIME type: text/plain
File size: 1063 byte(s)
restructure IMDB trivia parser, added db target to create
trivia database in PostgreSQL
1 dpavlin 29 #!/usr/bin/perl -w
2    
3     use strict;
4 dpavlin 52 use Search::Estraier 0.06;
5 dpavlin 83 use parse_trivia;
6 dpavlin 29
7     # score for words in title
8     my $title_rank = 3;
9    
10     open(my $t, "gzip -cd trivia.list.gz |") || die "can't open trivia.list.gz: $!";
11    
12 dpavlin 41 # open node
13 dpavlin 50 my $node = Search::Estraier::Node->new(
14     url => 'http://localhost:1978/node/trivia',
15     user => 'admin',
16     passwd => 'admin',
17 dpavlin 52 create => 1,
18 dpavlin 50 );
19 dpavlin 29
20 dpavlin 83 my $nr = 1;
21 dpavlin 29
22 dpavlin 83 parse_trivia($t, sub {
23 dpavlin 29
24 dpavlin 83 my $a = {@_};
25 dpavlin 29
26     # create a document object
27 dpavlin 50 my $doc = Search::Estraier::Document->new;
28 dpavlin 29
29     # add attributes to the document object
30 dpavlin 83 $doc->add_attr('@uri', "file://localhost/trivia/$nr");
31 dpavlin 30
32 dpavlin 83 $doc->add_attr('@title', $a->{title});
33 dpavlin 30 $doc->add_hidden_text(
34 dpavlin 83 (($a->{title} . ' ') x $title_rank)
35 dpavlin 30 );
36    
37 dpavlin 83 $doc->add_attr('@size', length($a->{trivia}));
38 dpavlin 29
39 dpavlin 83 $doc->add_attr('year', $a->{year}) if ($a->{year});
40     foreach my $q ( $a->{qv} ) {
41 dpavlin 29 $doc->add_attr('quote', $q);
42     $doc->add_hidden_text($q);
43     }
44    
45     # add the body text to the document object
46 dpavlin 83 $doc->add_text($a->{trivia});
47 dpavlin 29
48    
49     # register the document object to the database
50 dpavlin 41 $node->put_doc($doc);
51 dpavlin 29
52 dpavlin 83 });

Properties

Name Value
svn:executable *

  ViewVC Help
Powered by ViewVC 1.1.26