PyLucene을 사용하려고하는데 현재 버전에서 실제로 실행되는 코드 예제를 찾을 수 없습니다. (예 : http://nullege.com/codes/search/PyLucene.StandardAnalyzer 참조).pylucene 3.5에서 StandardAnalyzer를 인스턴스화하는 방법은 무엇입니까? Version 객체는 어디에 있습니까?
어느 시점에서 분석기를 인스턴스화해야합니다. lucene.StandardAnalyzer()를 호출하여 수행해야하는 것으로 보입니다. 그러나,이 오류를 제공합니다
lucene.InvalidArgsError: (<type 'StandardAnalyzer'>, '__init__',())
오류에 대한 이유는 매우 분명하다 다음 StandardAnalyzer 문서는, http://lucene.apache.org/core/old_versioned_docs/versions/3_0_3/api/core/index.html에서,이 버전의 객체 인 인수가 필요했다.
버전 개체는 어디에서 가져 옵니까?
다음 가지 코드 샘플에 출연하지만, 일을 실제로하지 않은 :
- lucene.Version.LUCENE_CURRENT
- lucene.Version.LUCENE_30
그 이름은 정의되지 않습니다를. 여기 내 lucene.Version 클래스는 그 안에 가지고있는 작업은 다음과 같습니다
>>> print dir(lucene.Version)
['__class__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_jobject', 'cast_', 'class', 'compareTo', 'declaringClass', 'equals', 'getClass', 'getDeclaringClass', 'hashCode', 'instance_', 'name', 'notify', 'notifyAll', 'of_', 'onOrAfter', 'ordinal', 'parameters_', 'toString', 'valueOf', 'values', 'wait']
좋아요, 알아 냈습니다. 'lucene.initVM()'을 실행하면 lucene.Version 객체는'lucene.Version.LUCENE_35'와 같은 다양한 버전 객체로 채워질 것입니다. 이것은 StandardAnalyzer를 구성하는 라인 : 분석기 = lucene.StandardAnalyzer (lucene.Version.LUCENE_35) – rspeer