【发布时间】:2019-06-16 16:05:56
【问题描述】:
我在一个 json 文件 (geo.json) 中获取地理数据,该文件具有以下结构
{"userId":"Geo-data","data":{"mocked":false,"timestamp":1548173963281,"coords":{"speed":0,"heading":0,"accuracy":20.20400047302246,"longitude":88.4048656,"altitude":0,"latitude":22.5757344}}}
我想要的只是打印与上述数据相对应的地点详细信息,如果可能的话,也可以在 MAP 上显示它。我已经用 geopy 尝试了以下代码
from geopy.geocoders import Nominatim
geolocator = Nominatim()
location = geolocator.reverse("22.5757344, 88.4048656")
print(location.address)
print((location.latitude, location.longitude))
但是我得到的位置不是很准确。而相同的坐标在https://www.latlong.net/Show-Latitude-Longitude.html 中给出了很好的结果 我还有一个 Google API 密钥。然而,到目前为止,我发现的任何参考资料本身几乎就像一个项目,对于像我这样的初学者来说是一种过度杀伤力。 geopy 代码很好,但定位精度很差。请帮忙。
附言 我也尝试过地理编码器
import geocoder
g = geocoder.google([45.15, -75.14], method='reverse')
print(g.city)
print(g.state)
print(g.state_long)
print(g.country)
print(g.country_long)
但是在所有情况下它都打印“无”。
【问题讨论】:
-
不知道为什么有人将其标记为负面。它不是重复的,我试图解释我尝试过的所有事情,以便有人可以提供帮助。我还想问什么?
标签: python-2.7 google-maps reverse-geocoding