【问题标题】:Proximity Search with Google App Engine and Search API使用 Google App Engine 和 Search API 进行邻近搜索
【发布时间】:2014-06-25 21:40:48
【问题描述】:

我正在使用 Python2.7、Google App Engine 1.9.* 和 Search API。 我存储启用位置的兴趣点。 现在我想实现 GET,它返回从给定位置一定距离内的所有兴趣点。

我在Google Search API Basics online document 中找到的示例指的是查询结果的排序。可以在github repo appengine-search-python-java 找到同样的示例作为完整的源代码包。无论查询字符串是什么,找到的兴趣点(示例中的商店)都按邻近顺序列出,最近的在前。

还有一些例子说明如何限制返回值的数量。 More Complex Search API Queries tutorial, section Query Options

search_query = search.Query(
query_string=query.strip(),
options=search.QueryOptions(
    limit=doc_limit,
...

但是,我的用例要求截断是距离,而不是硬性项目数。 有人有这方面的例子吗?

【问题讨论】:

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


    【解决方案1】:

    糟糕,没有仔细阅读,答案在同一个地方 Location-Based Queries (Geosearch)

    # a query string like this comes from the client
    query = "distance(store_location, geopoint(-33.857, 151.215)) < 45000"
    try:
      index = search.Index(config.STORE_INDEX_NAME)
      search_results = index.search(query)
     for doc in search_results:
        # process doc ...
    except search.Error:
      # ...
    

    【讨论】:

      猜你喜欢
      • 2023-03-19
      • 1970-01-01
      • 1970-01-01
      • 2010-12-02
      • 1970-01-01
      • 1970-01-01
      • 2013-02-21
      • 2014-07-14
      • 1970-01-01
      相关资源
      最近更新 更多