地理位置在谷歌地图上显示错误

9

当我使用 http://html5demos.com/geo 定位自己时,在 Firefox 和 Chrome 中显示的位置(城市)是错误的。有什么原因导致这种情况发生吗?


我认为原因在这里解释了:https://nixintel.info/osint/geolocating-mobile-phones-with-an-ip/物理位置和移动IP地址之间没有真正的相关性。 IP地址并不像旧的固定电话号码那样按地理位置组织。更准确地说,应该将它们视为按ISP和服务类型分组。 - Justin
6个回答

8
我在Windows上使用Chrome时遇到了同样的问题,但我至少有些时间让它运行起来。我也使用了 http://html5demos.com/geo 这个示例。位置不仅不准确,而且城市错误。我在iPad (Safari)上尝试了相同的示例,在那里位置是正确的。我的iPad使用的是和PC相同的WiFi网络,所以我知道这不是我的ISP返回错误位置的问题,而是与我的PC上的浏览器有关。通过进入Chrome设置并清除缓存和cookie,我让它在Chrome中显示出正确的位置。在Chrome中仅选择“工具/清除浏览数据/cookie和缓存”是不够的。只有当我在Chrome中选择“设置/隐私权/内容设置/所有cookie和站点数据”并删除所有cookie后,示例才会显示正确的位置。
更新1: 我在第二天尝试了相同的地理位置示例,结果又显示错误的城市,我尝试了清除Chrome设置,但这次这种解决方案没有奏效。然后我使用了应用程序CCleaner,并选择了清理器/应用程序,并清除了所有Chrome数据(Internet缓存、Internet历史记录、cookie和session),这样地理位置示例就显示了正确的位置。我使用的是最新版的Chrome。希望在将来的版本中它会更一致地工作。
更新2: 我在以后的日期尝试了上述过程,却无法完全获得正确的位置。可能现在地理位置是使用我的IP和谷歌位置服务返回我的互联网服务提供商的位置,而不是我的位置。当然这个位置相当没有用。我的iPad返回正确的位置的原因可能是因为它包含一个内置GPS。iPad 3G / 4G内置一个GPS芯片到GSM接收器芯片中,而仅有WiFi的型号则没有GPS。当在iPad设置中关闭“位置服务”时,通过GPS和IP定位都会关闭。只使用IP定位将我的iPad的GPS关闭可能是有用的,但我不确定是否可能。
更新3:正如我所提到的,我正在使用PC的WiFi棒。我注意到当我查看可用的WiFi网络(使用“查看可用的无线网络”)时,如果我的网络是唯一的网络,则地理位置示例会返回另一个城市的位置,但如果我的邻居中有任何一个WiFi网络在我的PC的范围内,地理位置示例将返回我的精确位置,误差在几米以内。即浏览器中的地理位置足够聪明,可以使用此额外信息来定位我。(我认为此问题的其他答案完全走错了方向。提问者指出位置显示为错误的城市,因此问题与位置精度无关)。

听起来像是Google的IP到位置数据库对您的IP地址有误。如果您使用的是动态地址,那么很容易出现这种情况,因为没有保证其他使用该地址的人会和您在同一个城市。至于Wi-Fi更改结果的原因,那是因为Firefox使用附近接入点集合作为计算的一部分。如果所有AP都指示一个位置,而您的IP地址指示另一个位置,那么让多数票获胜并使用AP派生的位置就是有道理的。 - David C.

3
不同的设备具有不同程度的准确性,你的应用程序需要意识到这种差异是很重要的。内置GPS单元并且开启的手机通常在三米范围内非常准确。没有GPS单元或者已关闭GPS单元以最大程度延长电池寿命的手机,或者处于无法接收GPS卫星信号的位置,将使用基站三角定位来估算用户位置,通常精度在3000米左右,足以确定用户所在的街区,但完全无法告诉他们正在看哪座建筑物。
如果用户从连接着陆地宽带的计算机访问您的网站,可以通过查询提供商数据库并从DSL或电缆提供商确定确切地址,通常可以精确找到地址。
要获取位置信息的准确性,可以查询坐标对象上的准确性属性。准确性属性并不是非常精确,但它会给你的应用程序一个好的提示,告诉你是否有近乎精确的位置或者街区。

2
根据Firefox地理定位FAQ,Firefox使用谷歌进行位置服务。它会向谷歌发送以下信息:
  • 您的IP地址
  • 附近无线接入点的信息
  • 随机的谷歌分配的标识符(每周更改一次)
我认为,如果您的计算机安装了接收器,它也会使用GPS数据,但是常见问题解答中没有提到。也许是因为如果有GPS数据可用,则没有必要使用谷歌的服务器。
我认为作为谷歌产品,Chrome正在使用相同的地理定位数据库。
至于为什么会得到错误的答案,那将取决于谷歌的数据库。里面肯定存在错误。例如,尽管我的IP地址和雇主代理服务器的IP地址都在德克萨斯州普莱诺市,且所有其他IP到位置数据库都是正确的(从地址的注册whois数据中获取),但是我的办公电脑显示在墨西哥城。
这是两个谷歌页面,它们声称会有所帮助,尽管它们还没有对我产生任何影响: 后者(联系/ IP)是一种报告谷歌位置问题的表单,这些问题表现为谷歌将您重定向到错误国家的主页。他们说可能需要一个多月来纠正数据库。我已经等了将近两个月,没有运气。
有Firefox附加组件可用于强制浏览器报告特定位置。它们用于调试位置感知的Web服务,但也可以在像这样的情况下使用,其中常规方法无法工作。

0

我认为如果你使用watchPosition()方法而不是getCurrentPosition()方法,坐标将被更新得更频繁,这将产生更好的结果。

注意:最好使用除Chrome之外的其他浏览器,因为它对watchPosition()方法的支持不够好。


0

我找到了解决方法。每部手机都默认将其位置模式设置为高精度高精度使用GPS、Wi-Fi、蓝牙或移动网络来确定位置。

这可能是一个挑战,因为获取设备位置有许多变量。

解决方案将是将位置模式从高精度更改为仅设备仅GPS

仅设备仅GPS应该只使用GPS和设备传感器来确定位置。 我已经尝试过它,它完美地工作。

请使用下面的链接更改位置模式 https://www.verizon.com/support/knowledge-base-106080/


-2

这取决于获取位置的方法。如果使用IP地址,则可能会显示在任何地方。如果使用WiFi,则数据可能存在偏差。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接