Python 2.7 pysolr中的文档总数
如何获取与给定查询匹配的文档总数。我已使用以下查询:Python 2.7 pysolr中的文档总数,python-2.7,solr,pysolr,Python 2.7,Solr,Pysolr,如何获取与给定查询匹配的文档总数。我已使用以下查询: result = solr.search('ad_id : 20') print(len(result)) 由于默认返回值为“10”,因此输出仅为10,但计数为4000。如何获得计数总数?最终得到了答案: 在查询末尾添加了行=1000000 result=solr.search('ad\u id:20',行数=1000000) 但如果行数大于此值,则应在查询中更改该数字。这可能是一个不好的解决方案,但有效。 如果有人有更好的解决方案,请回复
result = solr.search('ad_id : 20')
print(len(result))
由于默认返回值为“10”,因此输出仅为10,但计数为4000。如何获得计数总数?最终得到了答案: 在查询末尾添加了
行=1000000
result=solr.search('ad\u id:20',行数=1000000)
但如果行数大于此值,则应在查询中更改该数字。这可能是一个不好的解决方案,但有效。
如果有人有更好的解决方案,请回复。无论返回多少文档。这在Solr的原始响应中被命名为numFound
您的解决方案并不适用于任何具有较大数据集的情况,因为它要求您检索所有文档,即使您不需要它们或不想显示它们的内容。计数存储在numFound变量中。使用以下代码:
result = solr.search('ad_id : 20')
print(result.raw_response['response']['numFound'])
正如@MatsLindh所提到的-
result = solr.search('ad_id : 20')
print(result.hits)
这与结果中可用的“点击”属性有何区别?不需要使用原始响应。