如何在synonym.txt中以编程方式对索引进行更改并查询新的同义词

时间:2012-07-20 11:04:19

标签: solr solrj synonym

请任何人建议我如何以编程方式在索引和查询部分中更改新的同义词enterp>

1 个答案:

答案 0 :(得分:0)

我做了一些非常相似的事情。我在表中有一个同义词列表,我不得不在索引和查询时让solr处理这些同义词。 我写了一个python脚本,它将同义词写入文件 - 这是solr conf目录中的synonyms.txt。只需确保文件名链接在schema.xml中,如此处所述 - http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#solr.SynonymFilterFactory

另外,请确保文本文件没有“,”或后面的空格,并且末尾没有空行。

这是我的python脚本的片段。希望它有所帮助

for key in synonym_dict:
    values = synonym_dict[key]
    for val in values:
        f.write(val + ',')
    f.seek(-2, 1)
    f.write('\n')
f.truncate()
f.close()

你需要搜索和截断以避免在“;”之前和空行。

希望有所帮助