我使用SPARQLWrapper模塊向virtuoso端點啓動查詢並獲得結果。python SPARQLWrapper只返回10000個結果
查詢總是返回最大的10000項
這裏是Python腳本:
from SPARQLWrapper import SPARQLWrapper, JSON
queryString = """
SELECT DISTINCT ?s
WHERE {
?s ?p ?o .
}
"""
sparql = SPARQLWrapper("http://localhost:8890/sparql")
sparql.setQuery(queryString)
sparql.setReturnFormat(JSON)
res = sparql.query().convert()
# Parse result
parsed = []
for entry in res['results']['bindings']:
for sparql_variable in entry.keys():
parsed.append({sparql_variable: entry[sparql_variable]['value']})
print('Query return ' + str(len(parsed)) + ' results')
當我勞克與
SELECT count(*) AS ?count
我得到三倍的權數查詢:917051.
SPARQLWrapper模塊爲什麼限制數量結果爲10000?
如何獲得所有結果?
「直接啓動」是什麼意思?通常Virtuoso在'virtuoso.ini'文件中設置了默認限制 - 所以首先,你應該檢查你的配置。 – AKSW
當一個啓動帶有計數的查詢進入virtuoso的指揮界面時,我得到正確的數字。我更改.ini文件中的參數,它工作,謝謝! –