url_path='https://v3v10.vitechinc.com/solr/v_us_participant/select?indent=on&q=*:*&fq=id:1&wt=json'
request = urllib2.Request(url_path)
response = urllib2.urlopen(request)
participant_data = response.read()
participant_data_metadata = json.loads(participant_data)['response']['docs']
for index in range(len(participant_data_metadata)):
for key in participant_data_metadata[index]:
print key ,':', (participant_data_metadata[index][key])
我有以下代码,使用solr查询获取id = 1的数据。
如果我将url路径更改为retreive前10条记录,如:
url_path =' https://v3v10.vitechinc.com/solr/v_us_participant/select?indent=on&q= :& fq = id:[1到10]& wt = json'
应该检索id为1到10,~10行的记录,而不是它的抛出错误。 enter code here
有人可以帮忙吗?
答案 0 :(得分:0)
我们可以使用类似下面的内容,但它会给出id = 1和10的记录,而不是两者之间的数字 url_path = 'https://v3v10.vitechinc.com/solr/v_us_participant/select?indent=on&q=id:[1%20TO%2010]&wt=json'
答案 1 :(得分:0)
如果您只在id
的id字段中获取值为1和10的文档 - 字段的类型可能是字符串而不是整数。如果你有一个字符串字段,它会将标记与你的值进行比较,作为一个排序的字母顺序列表,其中1和10将紧接着出现。
将字段类型更改为基于int的字段,重新索引然后按照您的方式进行范围查询,并且您应该在id字段中获取1-10的文档。 (即10份文件)。