def QuranicSearchEngine(indexpath="../../indexes/main/", qparser=QuranicParser): return BasicSearchEngine( qdocindex=QseDocIndex(indexpath), qparser=qparser, mainfield="aya", otherfields=[], qsearcher=QSearcher, qreader=QReader, qspellcheckers=[QAyaSpellChecker, QSubjectSpellChecker], qhighlight=Qhighlight)
def make_spellerrors_dict(self): """ make the spell errors dictionary @deprecated: forget this! """ D = QseDocIndex() R = QReader(D) nor = QArabicSymbolsFilter(True, True, True, True).normalize_all spell_err = {} for term in R.reader.all_terms(): if term[0] in ["aya"]: normalized = nor(term[1]) if spell_err.has_key(normalized): spell_err[normalized].append(term[1]) else: spell_err[normalized] = [term[1]] #print "\n".join( [unicode( key ) + u":" + ",".join( value ) for key, value in spell_err.items()] ) raw_str = self.dheader + u"\nspell_err=" + str(spell_err) fich = open(self.__dypypath + "spellerrors_dyn.py", "w+") fich.write(raw_str)
def test_searching(): index = QseDocIndex( paths.QSE_INDEX ) reader = QReader( index ) assert list(reader.list_terms( "sura_name" ))[:10] == []
if __name__ == "__main__": parse = _make_arabic_parser() print(parse("\"عاصم\"")) print(parse("[1 الى 3]")) print(parse("{a,b،c}")) print(parse("#122 ~dsd")) print(parse(">>اية")) print(parse("%عاصم")) print(parse("ليس عاصم و الموت أو الحياة وليس غيرهما")) print(parse("اية:عاصم")) print(parse("'h h j'")) print(parse("a*a")) print(parse("a*")) D = QseDocIndex("../alfanous/indexes/main/") QP = FuzzyQuranicParser(D.get_schema(), otherfields=['subject']) print(QP.parse("'لو كان البحر '")) print(QP.parse("\"عاصم\"")) print(QP.parse("[1 الى 3]")) print(QP.parse("{ملك,فعل}")) print(QP.parse("#122 ~dsd")) print(QP.parse(">>سماكم")) print(QP.parse("%عاصم")) print(QP.parse("ليس عاصم و الموت أو الحياة وليس غيرهما")) print(QP.parse("آية:عاصم")) print(QP.parse("'h h j'")) print(QP.parse("a*a")) print(QP.parse("b*")) print(QP.parse("*"))