首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Foursquare/任何其他免费API准确地按纬度和经度找到一个位置?

如何使用Foursquare/任何其他免费API准确地按纬度和经度找到一个位置?
EN

Stack Overflow用户
提问于 2022-04-03 20:41:37
回答 1查看 94关注 0票数 0

我试图使用Foursquare API来查找用户的位置。

问题是,它的数据库是非常有限的,所以有时它会返回离它100米远的最近的地方。如果用户在公园或任何其他有大片区域的地方,这可能是正确的。但是,如果一个用户离一家小咖啡馆100米远,这将是完全不正确的。

有没有任何方法来检查用户是否真的在使用Foursquare这个地方的领土呢?我还能用什么免费的地理定位API来获得准确的结果呢?

我试着按距离对结果进行排序--没有多大帮助。另外,我检查了Foursquare提供的某个地方的所有信息。我希望能找到一些关于某一地区的信息,这将是非常有帮助的--什么也找不到。

EN

回答 1

Stack Overflow用户

发布于 2022-06-06 14:56:25

我认为Foursquare的局限性来自于它们更多地关注感兴趣的地方,而不是通用的反向地理编码。因此,如果您的目标主要是精确性,我建议您研究地理编码/反向地理编码API。

大多数地理编码提供者都有一个免费的层,因此根据您提出的请求数量,您可以保持在免费的使用范围内。检查例如:Here.comOpenCageTomTom诺米纳蒂姆 by OpenStreetMap甚至可以免费用于非商业用途。

免责声明:自我宣传,我为Superface工作,我们编写了一个对这些提供者的比较,如果您正在使用Node.js,我们也有一个SDK,它为所有的API(和其他API)提供了一个统一的接口。反向地理编码的用法如下所示:

代码语言:javascript
复制
const { SuperfaceClient } = require('@superfaceai/one-sdk');
const sdk = new SuperfaceClient();

async function run() {
  const profile = await sdk.getProfile('address/geocoding');
  const result = await profile
    .getUseCase('ReverseGeocode')
    .perform({
      latitude: 37.423199,
      longitude: -122.084068
    });

  return result.unwrap();
}

还有其他通用(反向)地理编码库,如用于Python的节点地编码器地势

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71729711

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档