如何使用solrpy库将Solr查询响应转换为json?

时间:2013-12-21 19:07:12

标签: json solr

基本上,我正在尝试将来自Solr服务器的查询响应转换为可以传递给第三方api的json对象。但是,根据我的下面的代码,我无法做到:

    import solr
    import json

    if __name__=='__main__':
    s = solr.SolrConnection('http://localhost:8983/solr')
    op = open('output.json','w')

    for term in ['searchstring1','searchstring2','searcstring']:
        t = s.query('title:%s'%term,rows=100, wt='json')
        for news in t.results:
            op.write(news)

输出:回溯(最近一次呼叫最后):   文件“querying.py”,第11行,in     op.write(新闻) TypeError:期望一个字符缓冲区对象

我已经非常简要地阅读了Solr,并且发现了这个solrpy库以json格式存储查询结果。在这方面的任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您正在尝试将实际的python字典写入该文件,而不是它的json表示。错误消息试图告诉您,您传入的对象不能直接用作字符缓冲区。在将JSON表示写入文件之前,尝试使用json.dumps创建JSON表示。