如何获取SOLR文件的字数?

时间:2015-06-18 08:08:28

标签: solr solrj

我有pdf文件的二进制内容,我想将其上传到SOLR并索引其内容:

 ContentStreamUpdateRequest up = new ContentStreamUpdateRequest('/update/extract')
    up.setParam("literal.id", map.id)
    def tmpFile = null
    tmpFile = File.createTempFile(map.id, ".tmp")
    tmpFile.append(binary)
    up.addFile(tmpFile, ".pdf")
    // Do the SOLR stuff here
    def solr = getSolrServer()       
    up.setAction(AbstractUpdateRequest.ACTION.COMMIT, true, true)
    def response = solr.request(up)
    if (tmpFile) {
        tmpFile.delete()
    }
    return response

当我查询SOLR时,我可以检索SOLR文档。如何获取文件的实际内容?基本上我需要找到我上传的文件的字数,所以我打算在返回的字符串上做一个size()(如果可能的话)....

我对SOLR很新,所以我可能走错了轨道......非常感谢任何帮助:)

1 个答案:

答案 0 :(得分:1)

我假设您要计算已编入索引的PDF中的字数。确保

  1. 将PDF的全部内容索引到一个字段中。
  2. 确保此字段至少启用了空白标记生成器。这样它就可以将句子分成基于空格的单词。
  3. 执行此操作后,您可以使用构面或术语向量组件查找单词数。以下两个SO答案可能会有所帮助。

    https://stackoverflow.com/a/26933126/689625

    https://stackoverflow.com/a/26933126/689625