带有html标记的Solr索引xml文件(使用DataImportHandler)

时间:2016-09-27 11:23:11

标签: xml solr dataimporthandler

我有Solr 4.10.4,我想索引一个xml文件。 有些xml标签包含html标签。

<?xml version='1.0' encoding='UTF-8' standalone='no' ?>
<root>
   <info>
        <text>
             <p>text 1</p>
             <p>text 2</p>
             <p>text 3</p> 
        </text> 
   </info> 
</root>

我用过这个:

<charFilter class="solr.HTMLStripCharFilterFactory"/>

但它不起作用,我不知道出了什么问题。

微米。

1 个答案:

答案 0 :(得分:0)

HTMLStripCharFilterFactory 将从索引数据中剥离HTML tage,而不是从存储的数据中删除。
要在编制索引时删除html标记,可以在dataimporthandler中使用 HTMLStripTransformer 。以下是相同的DIH样本。

<dataConfig>
<dataSource name="fDS" type="FileDataSource" />
<document>
    <entity name="tika-test" processor="XPathEntityProcessor"
            url="${solr.install.dir}/example/exampledocs/content.xml" forEach="/root" dataSource="fDS">
            <field column="text" xpath="/root/info/text/p" />
    </entity>
</document>

这个变换器有一个属性stripHTML,它是一个布尔值(true / false)来表示 HTMLStripTransformer应该处理该字段。