首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何利用lat和long获取用户当前位置

如何利用lat和long获取用户当前位置
EN

Stack Overflow用户
提问于 2021-02-09 09:53:43
回答 2查看 162关注 0票数 1

我跟踪了地编码器一段时间以获取用户的当前位置和信息,并单独使用lat长值。

我被试过的密码。

代码语言:javascript
运行
复制
import geocoder
myloc = geocoder.ip('me')
print(myloc.latlng)
print(geocoder.ipinfo())

获取info值可以。但长期价值似乎不一样。它显示了一个几乎8~9km距离的位置。运行时似乎也有点长。还有其他方法可以更快地接近lat长值和运行时吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-02-09 11:11:33

您需要了解IP地理定位是如何工作的,以了解为什么没有得到精确的结果。

1- IP地理定位使用您的公共 IP地址来定位您。大多数情况下,此地址是由您的互联网供应商分配给您的。

这不是你的电脑的IP,也不是你家里的IP,而是你的互联网提供商的设备的IP (他们的出口指向互联网,路由器的IP在他们的基础设施中,或者其他任何东西)。

2-没有附加到IP地址的位置信息,并且取决于您正在使用的地理定位API,结果可以或多或少地精确。我使用抽象地理定位,因为它是免费的,准确的,并在实时:https://www.abstractapi.com/ip-geolocation-api您需要创建一个帐户,以获得您的API键,这只需几秒钟。

3-地理编码器有时可能比较慢.调用API非常简单,只需遍历Geo编码器,因此您可以不用它就可以获得更快的响应:

代码语言:javascript
运行
复制
import requests
import json

response = requests.get("https://ipgeolocation.abstractapi.com/v1/?api_key=YOUR_API_KEY")
data = json.loads(response.content)
print(data)

这将显示关于您的IP地址的大量信息,您可以随意添加一个ip_address参数来获取有关另一个IP的信息。

票数 1
EN

Stack Overflow用户

发布于 2021-02-09 10:17:57

geocoder使用您的ip来获取位置(而不是使用更先进的技术,如WIFI、SSID映射和全球定位系统),这并不准确。

来自iplocation.net

  1. 基于IP的地理定位有多精确?

地理位置数据库的准确性取决于所使用的数据库。对于Ip2Country数据库,一些供应商声称提供98%到99%的准确性,尽管典型的Ip2Country数据库的准确性更接近95%。对于IP到区域(或城市)来说,如果周边城市被视为正确的话,其准确率在50%到75%之间.考虑到没有官方的IP对区域信息来源,50+%的准确性是相当好的.

您可以尝试像这里提到的那样:https://github.com/joeljogy/Getting-GeoLocation来获得更精确的结果。

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

https://stackoverflow.com/questions/66116595

复制
相关文章

相似问题

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