App Engine返回20多个全文搜索结果

时间:2013-10-05 08:02:53

标签: google-app-engine cursor gae-search

我需要使用Python App Engine SDK循环访问最大量的全文搜索结果。我的代码目前如下:

search_index = search.Index(name="fullText")
indexed_results = search_index.search(search_query) 
for scored_document in indexed_results:
    hits_from_full_text_search.append(scored_document.doc_id)

我可以看到应该使用cursor class,但我不确定如何调整我的上述查询以在游标存在时连续循环。

编辑:

根据我当前的数据大小,我预计不需要循环多次,因此它应该保持在GAE过程超时限制内。

1 个答案:

答案 0 :(得分:0)

This answer帮助我提出了以下解决方案:

cursor = search.Cursor()                                          
search_index = search.Index(name="fullText")                      

while cursor != None:                                             

    options = search.QueryOptions(limit=5, cursor=cursor)         
    indexed_results = search_index.search(                        
    search.Query(query_string=search_query, options=options)) 
    cursor=indexed_results.cursor                                 

    for scored_document in indexed_results:                       
        hits_from_full_text_search.append(scored_document.doc_id)