我正在使用 Python-Freebase 模块的 mqlread() 。使用以下查询:
query = [{
"cursor": True,
"id": None,
"type": "/games/game",
"mid": None,
}]
返回 100 个条目,但结果不包括“光标”。如果您手动运行查询,您会得到类似以下内容的信息:
{ "code": "/api/status/ok", "cursor": "eNqFj8FqwzAQRD-mF4sisrtaaaWlhP6H8MHYNTUEW8hpKP36KjgU2kvnMoeZ4THjR923qhKS07wpAvR5VZbYBIL9sE76FDGAs-yCA_FISprL_nWUt5tC383L59ukh9llH_TvpL7Y7rYUdZ4CN9iRITB6vTwnAhriCAwAgXGO8Etkz48dicnvy3ptTGO6OwgsBwIfwJNeHpDWowgh_URO63-M0Z7vM0neGZNL3RrihBKFU_uZS2l3sT-9cpIBaRrnOE8JhaAhQL4B9ZFRmg==", "result": [
{
"id": "/en/cities_and_knights_of_catan",
"mid": "/m/02hq3",
"type": "/games/game"
},
....
其中包含“光标”。但结果是:
freebase.mqlread(query, extended=True)
将返回:
[{u'type': u'/games/game', u'id': u'/en/cities_and_knights_of_catan'}, ...
这会删除“代码”和“光标”。我怎样才能得到“光标”?
最佳答案
我发现 Freebase-Python 模块实际上包含一个为您处理光标的方法。只需调用 mqlreaditer(query, Extended=true),这将返回一个可以迭代的 Python 生成器。 Freebase 模块将在幕后查询并跟踪光标,按需返回结果,直到到达“假”光标。
非常简单!
关于python - 使用 Freebase API 时如何从 mqlread() 获取光标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4835141/