Mercurial > hg > fulltextSearch
comparison src/de/mpiwg/dwinter/fulltext/tests/TestSearchInLinesToDir.java @ 1:5c9c31510f0c
CLOSED - # 16: Zeige nur eine konfigurierbare Anzahl von Treffern an.
https://it-dev.mpiwg-berlin.mpg.de/tracs/pythonOcropusTools/ticket/16
author | dwinter |
---|---|
date | Wed, 03 Nov 2010 12:26:29 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
0:72a015318a6d | 1:5c9c31510f0c |
---|---|
1 package de.mpiwg.dwinter.fulltext.tests; | |
2 | |
3 import java.io.BufferedReader; | |
4 import java.io.File; | |
5 import java.io.FileReader; | |
6 import java.io.IOException; | |
7 import java.io.InputStreamReader; | |
8 import java.util.Date; | |
9 import java.util.HashMap; | |
10 | |
11 import javax.xml.parsers.ParserConfigurationException; | |
12 import javax.xml.xpath.XPathExpressionException; | |
13 | |
14 import org.apache.log4j.BasicConfigurator; | |
15 import org.apache.log4j.Level; | |
16 import org.apache.log4j.Logger; | |
17 import org.apache.lucene.analysis.Analyzer; | |
18 import org.apache.lucene.document.Document; | |
19 import org.apache.lucene.index.Term; | |
20 import org.apache.lucene.queryParser.ParseException; | |
21 import org.apache.lucene.queryParser.QueryParser; | |
22 import org.apache.lucene.search.Collector; | |
23 import org.apache.lucene.search.Query; | |
24 import org.apache.lucene.search.ScoreDoc; | |
25 import org.apache.lucene.search.TermQuery; | |
26 import org.apache.lucene.search.TopDocs; | |
27 import org.apache.lucene.search.TopDocsCollector; | |
28 import org.apache.lucene.util.Version; | |
29 import org.xml.sax.SAXException; | |
30 | |
31 import de.mpiwg.dwinter.fulltext.search.FulltextSearch; | |
32 import de.mpiwg.dwinter.fulltext.search.FulltextSearchDocsLines; | |
33 import de.mpiwg.dwinter.fulltext.searcher.LanguageSearcher; | |
34 | |
35 public class TestSearchInLinesToDir { | |
36 | |
37 protected static Logger logger = Logger.getRootLogger(); | |
38 | |
39 public static void main(String[] args) throws IOException, ParseException, XPathExpressionException, ParserConfigurationException, SAXException { | |
40 | |
41 | |
42 BasicConfigurator.configure(); | |
43 logger.setLevel(Level.ALL); | |
44 | |
45 String usage = "search <index_dir> <line_index_dir> <language>"; | |
46 if (args.length != 3) { | |
47 System.err.println("Usage: " + usage); | |
48 System.exit(1); | |
49 } | |
50 | |
51 String queries = null; | |
52 FulltextSearchDocsLines fulltextSearcher = new FulltextSearchDocsLines(new File(args[0]),new File(args[1])); | |
53 | |
54 BufferedReader in = null; | |
55 if (queries != null) { | |
56 in = new BufferedReader(new FileReader(queries)); | |
57 } else { | |
58 in = new BufferedReader(new InputStreamReader(System.in)); | |
59 } | |
60 | |
61 while (true) { | |
62 if (queries == null) // prompt the user | |
63 System.out.println("Enter query: "); | |
64 | |
65 String line = in.readLine(); | |
66 | |
67 if (line == null || line.length() == -1) | |
68 break; | |
69 | |
70 line = line.trim(); | |
71 if (line.length() == 0) | |
72 break; | |
73 | |
74 System.out.println("line: "+line); | |
75 | |
76 //Query query= new TermQuery(new Term("contents",line)); | |
77 Analyzer analyzer = fulltextSearcher.languageSearchers.getSearcherByLanguage(args[2]).analyzer; | |
78 QueryParser parser = new QueryParser(Version.LUCENE_30,"contents",analyzer); | |
79 Query query= parser.parse(line); | |
80 fulltextSearcher.searchInLinesToDir(query,args[2],"1"); | |
81 | |
82 } | |
83 } | |
84 } | |
85 |